diff --git a/modules/ecrans/__init__.py b/modules/ecrans/__init__.py deleted file mode 100644 index 8f7d0d4d..00000000 --- a/modules/ecrans/__init__.py +++ /dev/null @@ -1,24 +0,0 @@ -"NewspaperEcransBackend init" -# -*- coding: utf-8 -*- - -# Copyright(C) 2011 Julien Hebert -# -# This file is part of weboob. -# -# weboob is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# weboob is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with weboob. If not, see . - -from .backend import NewspaperEcransBackend - - -__all__ = ['NewspaperEcransBackend'] diff --git a/modules/ecrans/backend.py b/modules/ecrans/backend.py deleted file mode 100644 index 3d7f523b..00000000 --- a/modules/ecrans/backend.py +++ /dev/null @@ -1,40 +0,0 @@ -# -*- coding: utf-8 -*- - -# Copyright(C) 2011 Julien Hebert -# -# This file is part of weboob. -# -# weboob is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# weboob is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with weboob. If not, see . -"backend for http://www.ecrans.fr" - -from weboob.capabilities.messages import ICapMessages -from weboob.tools.capabilities.messages.GenericBackend import GenericNewspaperBackend -from .browser import NewspaperEcransBrowser -from .tools import rssid, url2id - - -class NewspaperEcransBackend(GenericNewspaperBackend, ICapMessages): - MAINTAINER = u'Julien Hebert' - EMAIL = 'juke@free.fr' - VERSION = '0.h' - LICENSE = 'AGPLv3+' - STORAGE = {'seen': {}} - NAME = 'ecrans' - DESCRIPTION = u'Écrans French news website' - BROWSER = NewspaperEcransBrowser - RSS_FEED = 'http://www.ecrans.fr/rss/53/spip.php?page=backend' - RSSID = staticmethod(rssid) - URL2ID = staticmethod(url2id) - # RSS Size is actually 10, but some articles are not sorted by publication date - RSSSIZE = 40 diff --git a/modules/ecrans/browser.py b/modules/ecrans/browser.py deleted file mode 100644 index 0598a117..00000000 --- a/modules/ecrans/browser.py +++ /dev/null @@ -1,44 +0,0 @@ -"browser for ecrans website" -# -*- coding: utf-8 -*- - -# Copyright(C) 2011 Julien Hebert -# -# This file is part of weboob. -# -# weboob is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# weboob is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with weboob. If not, see . - -from .pages.article import ArticlePage -from weboob.tools.browser import BaseBrowser - - -class NewspaperEcransBrowser(BaseBrowser): - "NewspaperEcransBrowser class" - PAGES = { - "http://www.ecrans.fr/.*": ArticlePage, - } - - def is_logged(self): - return False - - def login(self): - pass - - def fillobj(self, obj, fields): - pass - - def get_content(self, _id): - "return page article content" - url = _id.replace('/rss/53', '') - self.location(url) - return self.page.get_article(url) diff --git a/modules/ecrans/favicon.png b/modules/ecrans/favicon.png deleted file mode 100644 index 59f38642..00000000 Binary files a/modules/ecrans/favicon.png and /dev/null differ diff --git a/modules/ecrans/pages/__init__.py b/modules/ecrans/pages/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/modules/ecrans/pages/article.py b/modules/ecrans/pages/article.py deleted file mode 100644 index a29635cf..00000000 --- a/modules/ecrans/pages/article.py +++ /dev/null @@ -1,39 +0,0 @@ -"ArticlePage object for ecrans" -# -*- coding: utf-8 -*- - -# Copyright(C) 2011 Julien Hebert -# -# This file is part of weboob. -# -# weboob is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# weboob is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with weboob. If not, see . - -from weboob.tools.capabilities.messages.genericArticle import GenericNewsPage, remove_from_selector_list, try_remove_from_selector_list, try_drop_tree, clean_relativ_urls - - -class ArticlePage(GenericNewsPage): - "ArticlePage object for ecrans" - def on_loaded(self): - self.main_div = self.document.getroot() - self.element_title_selector = "title" - self.element_author_selector = "p.auteur>a" - self.element_body_selector = "div.bloc_article_01" - - def get_body(self): - element_body = self.get_element_body() - remove_from_selector_list(self.parser, element_body, ["p.auteur", "h4"]) - try_remove_from_selector_list(self.parser, element_body, ["p.tag", "div.alire", self.element_title_selector, "h4"]) - try_drop_tree(self.parser, element_body, "script") - clean_relativ_urls(element_body, "http://ecrans.fr") - - return self.parser.tostring(element_body) diff --git a/modules/ecrans/test.py b/modules/ecrans/test.py deleted file mode 100644 index 32183395..00000000 --- a/modules/ecrans/test.py +++ /dev/null @@ -1,32 +0,0 @@ -# -*- coding: utf-8 -*- - -# Copyright(C) 2010-2011 Romain Bignon -# -# This file is part of weboob. -# -# weboob is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# weboob is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with weboob. If not, see . - - -from weboob.tools.test import BackendTest - - -__all__ = ['EcransTest'] - - -class EcransTest(BackendTest): - BACKEND = 'ecrans' - - def test_new_messages(self): - for message in self.backend.iter_unread_messages(): - pass diff --git a/modules/ecrans/tools.py b/modules/ecrans/tools.py deleted file mode 100644 index 6163e3a9..00000000 --- a/modules/ecrans/tools.py +++ /dev/null @@ -1,35 +0,0 @@ -"tools for lefigaro backend" -# -*- coding: utf-8 -*- - -# Copyright(C) 2011 Julien Hebert -# -# This file is part of weboob. -# -# weboob is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# weboob is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with weboob. If not, see . - -import re - - -def url2id(url): - "return an id from an url" - regexp = re.compile("(^.*),([0-9]+)\.html$") - match = regexp.match(url) - if match: - return match.group(2) - else: - raise ValueError("Can't find an id for the url") - - -def rssid(entry): - return url2id(entry.id)