From c74bd6e0284562e124436cc29d93729216c52cc1 Mon Sep 17 00:00:00 2001 From: Romain Bignon Date: Mon, 21 Mar 2011 10:56:02 +0100 Subject: [PATCH] support sondages --- weboob/backends/dlfp/browser.py | 1 + weboob/backends/dlfp/pages/news.py | 2 +- weboob/backends/dlfp/tools.py | 6 ++++++ 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/weboob/backends/dlfp/browser.py b/weboob/backends/dlfp/browser.py index b1ce02c9..5e2f83c9 100644 --- a/weboob/backends/dlfp/browser.py +++ b/weboob/backends/dlfp/browser.py @@ -40,6 +40,7 @@ class DLFP(BaseBrowser): 'https://linuxfr.org/wiki/nouveau': WikiEditPage, 'https://linuxfr.org/wiki/[^\.]+/modifier': WikiEditPage, 'https://linuxfr.org/suivi/[^\.]+': ContentPage, + 'https://linuxfr.org/sondages/[^\.]+': ContentPage, 'https://linuxfr.org/users/[\w\-_]+/journaux/[^\.]+': ContentPage, 'https://linuxfr.org/forums/[\w\-_]+/posts/[^\.]+': ContentPage, 'https://linuxfr.org/nodes/(\d+)/comments/(\d+)': CommentPage, diff --git a/weboob/backends/dlfp/pages/news.py b/weboob/backends/dlfp/pages/news.py index 8ebd6c2b..c0cc2206 100644 --- a/weboob/backends/dlfp/pages/news.py +++ b/weboob/backends/dlfp/pages/news.py @@ -166,7 +166,7 @@ class ContentPage(DLFPPage): if not self.article: self.article = Article(self.browser, self.url, - select(self.document.getroot(), 'article', 1)) + select(self.document.getroot(), 'div#contents article', 1)) try: threads = select(self.document.getroot(), 'ul.threads', 1) diff --git a/weboob/backends/dlfp/tools.py b/weboob/backends/dlfp/tools.py index aedc6750..7433278e 100644 --- a/weboob/backends/dlfp/tools.py +++ b/weboob/backends/dlfp/tools.py @@ -24,6 +24,7 @@ URL2ID_DIARY_RE = re.compile('.*/users/([\w\-_]+)/journaux/([^\.]+)') URL2ID_NEWSPAPER_RE = re.compile('.*/news/(.+)') URL2ID_WIKI_RE = re.compile('.*/wiki/([^ /]+)') URL2ID_SUIVI_RE = re.compile('.*/suivi/([^ /]+)') +URL2ID_SONDAGE_RE = re.compile('.*/sondages/([^ /]+)') URL2ID_FORUM_RE = re.compile('.*/forums/([\w\-_]+)/posts/([^\.]+)') def rssid(entry): @@ -57,6 +58,8 @@ def id2url(id): return '/forums/%s/posts/%s' % (m.group(2), m.group(3)) if m.group(1) == 'S': return '/suivi/%s' % m.group(3) + if m.group(1) == 's': + return '/sondages/%s?results=1' % m.group(3) def url2id(url): m = URL2ID_NEWSPAPER_RE.match(url) @@ -74,6 +77,9 @@ def url2id(url): m = URL2ID_SUIVI_RE.match(url) if m: return 'S.%s' % (m.group(1)) + m = URL2ID_SONDAGE_RE.match(url) + if m: + return 's.%s' % (m.group(1)) def id2threadid(id): m = ID2URL_RE.match(id)