s/BaseBackend/BaseModule

This commit is contained in:
Florent 2014-09-22 17:25:38 +02:00
commit 8559af3d6a
165 changed files with 354 additions and 354 deletions

View file

@ -63,8 +63,8 @@ For example, use this command::
In a module directory, there are commonly these files:
* **__init__.py** - needed in every python modules, it exports your :class:`BaseBackend <weboob.tools.backend.BaseBackend>` class.
* **backend.py** - defines the main class of your module, which derives :class:`BaseBackend <weboob.tools.backend.BaseBackend>`.
* **__init__.py** - needed in every python modules, it exports your :class:`BaseModule <weboob.tools.backend.BaseModule>` class.
* **backend.py** - defines the main class of your module, which derives :class:`BaseModule <weboob.tools.backend.BaseModule>`.
* **browser.py** - your browser, derived from :class:`BaseBrowser <weboob.tools.browser2.browser.BaseBrowser>`, is called by your module to interact with the supported website.
* **pages.py** - all website's pages handled by the browser are defined here
* **test.py** - functional tests
@ -97,9 +97,9 @@ If the last command does not work, check your :doc:`repositories setup </guides/
Backend class
*************
Edit ``backend.py``. It contains the main class of the module derived from :class:`BaseBackend <weboob.tools.backend.BaseBackend>` class::
Edit ``backend.py``. It contains the main class of the module derived from :class:`BaseModule <weboob.tools.backend.BaseModule>` class::
class ExampleBackend(BaseBackend, CapBank):
class ExampleBackend(BaseModule, CapBank):
NAME = 'example' # The name of module
DESCRIPTION = u'Example bank website' # Description of your module
MAINTAINER = u'John Smith' # Name of maintainer of this module
@ -138,7 +138,7 @@ For example::
from weboob.tools.backend import BackendConfig
# ...
class ExampleBackend(BaseBackend, CapBank):
class ExampleBackend(BaseModule, CapBank):
# ...
CONFIG = BackendConfig(Value('username', label='Username', regexp='.+'),
ValueBackendPassword('password', label='Password'),
@ -155,7 +155,7 @@ Implement capabilities
You need to implement each method of all of the capabilities your module implements. For example, in our case::
# ...
class ExampleBackend(BaseBackend, CapBank):
class ExampleBackend(BaseModule, CapBank):
# ...
def iter_accounts(self):
@ -271,7 +271,7 @@ Now you have a functional browser, you can use it in your class ``ExampleBackend
from .browser import ExampleBrowser
# ...
class ExampleBackend(BaseBackend, CapBank):
class ExampleBackend(BaseModule, CapBank):
# ...
BROWSER = ExampleBrowser
@ -288,9 +288,9 @@ Login management
----------------
When the website requires to be authenticated, you have to give credentials to the constructor of the browser. You can redefine
the method :func:`create_default_browser <weboob.tools.backend.BaseBackend.create_default_browser>`::
the method :func:`create_default_browser <weboob.tools.backend.BaseModule.create_default_browser>`::
class ExampleBackend(BaseBackend, CapBank):
class ExampleBackend(BaseModule, CapBank):
# ...
def create_default_browser(self):
return self.create_browser(self.config['username'].get(), self.config['password'].get())
@ -430,8 +430,8 @@ Filling objects
An object returned by a method of a capability can be not fully completed.
The class :class:`BaseBackend <weboob.tools.backend.BaseBackend>` provides a method named
:func:`fillobj <weboob.tools.backend.BaseBackend.fillobj>`, which can be called by an application to
The class :class:`BaseModule <weboob.tools.backend.BaseModule>` provides a method named
:func:`fillobj <weboob.tools.backend.BaseModule.fillobj>`, which can be called by an application to
fill some unloaded fields of a specific object, for example with::
backend.fillobj(video, ['url', 'author'])
@ -443,7 +443,7 @@ uncompleted fields, and call the method associated to the type of the object.
To define what objects are supported to be filled, and what method to call, define the ``OBJECTS``
class attribute in your ``ExampleBackend``::
class ExampleBackend(BaseBackend, CapVideo):
class ExampleBackend(BaseModule, CapVideo):
# ...
OBJECTS = {Video: fill_video}
@ -454,7 +454,7 @@ The prototype of the function might be::
Then, the function might, for each requested fields, fetch the right data and fill the object. For example::
class ExampleBackend(BaseBackend, CapVideo):
class ExampleBackend(BaseModule, CapVideo):
# ...
def fill_video(self, video, fields):
@ -477,7 +477,7 @@ The application can provide a storage to let your backend store data. So, you ca
STORAGE = {'seen': {}}
To store and read data in your storage space, use the ``storage`` attribute of your :class:`BaseBackend <weboob.tools.backend.BaseBackend>`
To store and read data in your storage space, use the ``storage`` attribute of your :class:`BaseModule <weboob.tools.backend.BaseModule>`
object.
It implements the methods of :class:`BackendStorage <weboob.tools.backend.BackendStorage>`.

View file

@ -18,7 +18,7 @@
# along with weboob. If not, see <http://www.gnu.org/licenses/>.
from weboob.capabilities.recipe import CapRecipe, Recipe
from weboob.tools.backend import BaseBackend
from weboob.tools.backend import BaseModule
from .browser import SevenFiftyGramsBrowser
@ -30,7 +30,7 @@ def strip_accents(s):
__all__ = ['SevenFiftyGramsBackend']
class SevenFiftyGramsBackend(BaseBackend, CapRecipe):
class SevenFiftyGramsBackend(BaseModule, CapRecipe):
NAME = '750g'
MAINTAINER = u'Julien Veyssier'
EMAIL = 'julien.veyssier@aiur.fr'

View file

@ -18,7 +18,7 @@
# along with weboob. If not, see <http://www.gnu.org/licenses/>.
from weboob.tools.backend import BaseBackend, BackendConfig
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.ordereddict import OrderedDict
from weboob.tools.value import Value
from weboob.capabilities.job import CapJob
@ -28,7 +28,7 @@ from .job import AdeccoJobAdvert
__all__ = ['AdeccoBackend']
class AdeccoBackend(BaseBackend, CapJob):
class AdeccoBackend(BaseModule, CapJob):
NAME = 'adecco'
DESCRIPTION = u'adecco website'
MAINTAINER = u'Bezleputh'

View file

@ -18,7 +18,7 @@
# along with weboob. If not, see <http://www.gnu.org/licenses/>.
from weboob.tools.backend import BaseBackend, BackendConfig
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.capabilities.calendar import CapCalendarEvent, CATEGORIES
from weboob.tools.ordereddict import OrderedDict
from weboob.tools.value import Value
@ -29,7 +29,7 @@ from .browser import AgendadulibreBrowser
__all__ = ['AgendadulibreBackend']
class AgendadulibreBackend(BaseBackend, CapCalendarEvent):
class AgendadulibreBackend(BaseModule, CapCalendarEvent):
NAME = 'agendadulibre'
DESCRIPTION = u'agendadulibre website'
MAINTAINER = u'Bezleputh'

View file

@ -18,7 +18,7 @@
# along with weboob. If not, see <http://www.gnu.org/licenses/>.
from weboob.capabilities.cinema import CapCinema, Person, Movie
from weboob.tools.backend import BaseBackend
from weboob.tools.backend import BaseModule
from .browser import AllocineBrowser
@ -27,7 +27,7 @@ from urllib import quote_plus
__all__ = ['AllocineBackend']
class AllocineBackend(BaseBackend, CapCinema):
class AllocineBackend(BaseModule, CapCinema):
NAME = 'allocine'
MAINTAINER = u'Julien Veyssier'
EMAIL = 'julien.veyssier@aiur.fr'

View file

@ -20,7 +20,7 @@
from weboob.capabilities.bank import CapBank, AccountNotFound
from weboob.tools.backend import BaseBackend, BackendConfig
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.value import ValueBackendPassword
from .browser import AlloRestoBrowser
@ -29,7 +29,7 @@ from .browser import AlloRestoBrowser
__all__ = ['AlloRestoBackend']
class AlloRestoBackend(BaseBackend, CapBank):
class AlloRestoBackend(BaseModule, CapBank):
NAME = 'alloresto'
MAINTAINER = u'Romain Bignon'
EMAIL = 'romain@weboob.org'

View file

@ -18,7 +18,7 @@
# along with weboob. If not, see <http://www.gnu.org/licenses/>.
from weboob.capabilities.recipe import CapRecipe, Recipe
from weboob.tools.backend import BaseBackend
from weboob.tools.backend import BaseModule
from .browser import AllrecipesBrowser
@ -27,7 +27,7 @@ from urllib import quote_plus
__all__ = ['AllrecipesBackend']
class AllrecipesBackend(BaseBackend, CapRecipe):
class AllrecipesBackend(BaseModule, CapRecipe):
NAME = 'allrecipes'
MAINTAINER = u'Julien Veyssier'
EMAIL = 'julien.veyssier@aiur.fr'

View file

@ -19,14 +19,14 @@
import urllib
from weboob.capabilities.bill import CapBill, SubscriptionNotFound, BillNotFound, Subscription, Bill
from weboob.tools.backend import BaseBackend, BackendConfig
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.value import ValueBackendPassword
from .browser import AmeliBrowser
__all__ = ['AmeliBackend']
class AmeliBackend(BaseBackend, CapBill):
class AmeliBackend(BaseModule, CapBill):
NAME = 'ameli'
DESCRIPTION = u'Ameli website: French Health Insurance'
MAINTAINER = u'Christophe Lampin'

View file

@ -19,14 +19,14 @@
import urllib
from weboob.capabilities.bill import CapBill, SubscriptionNotFound, BillNotFound, Subscription, Bill
from weboob.tools.backend import BaseBackend, BackendConfig
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.value import ValueBackendPassword
from .browser import AmeliProBrowser
__all__ = ['AmeliProBackend']
class AmeliProBackend(BaseBackend, CapBill):
class AmeliProBackend(BaseModule, CapBill):
NAME = 'amelipro'
DESCRIPTION = u'Ameli website: French Health Insurance for Professionals'
MAINTAINER = u'Christophe Lampin'

View file

@ -20,7 +20,7 @@
from weboob.capabilities.bank import CapBank, AccountNotFound
from weboob.tools.backend import BaseBackend, BackendConfig
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.value import ValueBackendPassword
from .browser import AmericanExpressBrowser
@ -29,7 +29,7 @@ from .browser import AmericanExpressBrowser
__all__ = ['AmericanExpressBackend']
class AmericanExpressBackend(BaseBackend, CapBank):
class AmericanExpressBackend(BaseModule, CapBank):
NAME = 'americanexpress'
MAINTAINER = u'Romain Bignon'
EMAIL = 'romain@weboob.org'

View file

@ -18,7 +18,7 @@
# along with weboob. If not, see <http://www.gnu.org/licenses/>.
from weboob.tools.backend import BaseBackend, BackendConfig
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.capabilities.job import CapJob
from weboob.tools.ordereddict import OrderedDict
from weboob.tools.value import Value
@ -28,7 +28,7 @@ from .job import ApecJobAdvert
__all__ = ['ApecBackend']
class ApecBackend(BaseBackend, CapJob):
class ApecBackend(BaseModule, CapJob):
NAME = 'apec'
DESCRIPTION = u'apec website'
MAINTAINER = u'Bezleputh'

View file

@ -18,7 +18,7 @@
# along with weboob. If not, see <http://www.gnu.org/licenses/>.
from weboob.capabilities.bank import CapBank
from weboob.tools.backend import BaseBackend, BackendConfig
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.value import ValueBackendPassword
from .browser import ApivieBrowser
@ -27,7 +27,7 @@ from .browser import ApivieBrowser
__all__ = ['ApivieBackend']
class ApivieBackend(BaseBackend, CapBank):
class ApivieBackend(BaseModule, CapBank):
NAME = 'apivie'
DESCRIPTION = u'Apivie'
MAINTAINER = u'Romain Bignon'

View file

@ -20,7 +20,7 @@
from weboob.capabilities.video import CapVideo, BaseVideo
from weboob.capabilities.collection import CapCollection, CollectionNotFound
from weboob.tools.backend import BaseBackend, BackendConfig
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.value import ValueBackendPassword
from .browser import ArretSurImagesBrowser
@ -29,7 +29,7 @@ from .video import ArretSurImagesVideo
__all__ = ['ArretSurImagesBackend']
class ArretSurImagesBackend(BaseBackend, CapVideo, CapCollection):
class ArretSurImagesBackend(BaseModule, CapVideo, CapCollection):
NAME = 'arretsurimages'
DESCRIPTION = u'arretsurimages website'
MAINTAINER = u'franek'

View file

@ -22,7 +22,7 @@ import re
from weboob.capabilities.video import CapVideo, BaseVideo
from weboob.capabilities.collection import CapCollection, CollectionNotFound, Collection
from weboob.tools.backend import BaseBackend, BackendConfig
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.value import Value
from .browser import ArteBrowser
@ -32,7 +32,7 @@ from .video import ArteVideo, ArteLiveVideo
__all__ = ['ArteBackend']
class ArteBackend(BaseBackend, CapVideo, CapCollection):
class ArteBackend(BaseModule, CapVideo, CapCollection):
NAME = 'arte'
MAINTAINER = u'Bezleputh'
EMAIL = 'carton_ben@yahoo.fr'

View file

@ -18,7 +18,7 @@
# along with weboob. If not, see <http://www.gnu.org/licenses/>.
from weboob.capabilities.subtitle import CapSubtitle, LanguageNotSupported
from weboob.tools.backend import BaseBackend
from weboob.tools.backend import BaseModule
from .browser import AttilasubBrowser
@ -27,7 +27,7 @@ from urllib import quote_plus
__all__ = ['AttilasubBackend']
class AttilasubBackend(BaseBackend, CapSubtitle):
class AttilasubBackend(BaseModule, CapSubtitle):
NAME = 'attilasub'
MAINTAINER = u'Julien Veyssier'
EMAIL = 'julien.veyssier@aiur.fr'

View file

@ -22,7 +22,7 @@ from weboob.capabilities.radio import CapRadio, Radio
from weboob.capabilities.audiostream import BaseAudioStream
from weboob.tools.capabilities.streaminfo import StreamInfo
from weboob.capabilities.collection import CapCollection, Collection
from weboob.tools.backend import BaseBackend, BackendConfig
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.value import Value
from weboob.tools.browser import StandardBrowser
import time
@ -38,7 +38,7 @@ __all__ = ['AudioAddictBackend']
# option to another player in the ~/.config/weboob/radioob config file:
# [ROOT]
# media_player = your_non_mplayer_player
class AudioAddictBackend(BaseBackend, CapRadio, CapCollection):
class AudioAddictBackend(BaseModule, CapRadio, CapCollection):
NAME = 'audioaddict'
MAINTAINER = u'Pierre Mazière'
EMAIL = 'pierre.maziere@gmx.com'

View file

@ -33,7 +33,7 @@ from weboob.capabilities.messages import CapMessages, CapMessagesPost, Message,
from weboob.capabilities.dating import CapDating, OptimizationNotFound, Event
from weboob.capabilities.contact import CapContact, ContactPhoto, Query, QueryError
from weboob.capabilities.account import CapAccount, StatusField
from weboob.tools.backend import BaseBackend, BackendConfig
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.browser import BrowserUnavailable, BrowserHTTPNotFound
from weboob.tools.value import Value, ValuesDict, ValueBool, ValueBackendPassword
from weboob.tools.log import getLogger
@ -57,7 +57,7 @@ def parse_dt(s):
return local2utc(d)
class AuMBackend(BaseBackend, CapMessages, CapMessagesPost, CapDating, CapChat, CapContact, CapAccount):
class AuMBackend(BaseModule, CapMessages, CapMessagesPost, CapDating, CapChat, CapContact, CapAccount):
NAME = 'aum'
MAINTAINER = u'Romain Bignon'
EMAIL = 'romain@weboob.org'
@ -79,7 +79,7 @@ class AuMBackend(BaseBackend, CapMessages, CapMessagesPost, CapDating, CapChat,
MAGIC_ID_BASKET = 1
def __init__(self, *args, **kwargs):
BaseBackend.__init__(self, *args, **kwargs)
BaseModule.__init__(self, *args, **kwargs)
if self.config['antispam'].get():
self.antispam = AntiSpam()
else:

View file

@ -19,7 +19,7 @@
from weboob.capabilities.bank import CapBank, AccountNotFound
from weboob.tools.backend import BaseBackend, BackendConfig
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.value import ValueBackendPassword
from .browser import AXABanque
@ -28,7 +28,7 @@ from .browser import AXABanque
__all__ = ['AXABanqueBackend']
class AXABanqueBackend(BaseBackend, CapBank):
class AXABanqueBackend(BaseModule, CapBank):
NAME = 'axabanque'
MAINTAINER = u'Romain Bignon'
EMAIL = 'romain@weboob.org'

View file

@ -20,7 +20,7 @@
from weboob.capabilities.base import find_object
from weboob.capabilities.bank import CapBank, AccountNotFound
from weboob.tools.backend import BaseBackend, BackendConfig
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.value import ValueBackendPassword
from .browser import BanqueAccordBrowser
@ -29,7 +29,7 @@ from .browser import BanqueAccordBrowser
__all__ = ['BanqueAccordBackend']
class BanqueAccordBackend(BaseBackend, CapBank):
class BanqueAccordBackend(BaseModule, CapBank):
NAME = 'banqueaccord'
DESCRIPTION = u'Banque Accord'
MAINTAINER = u'Romain Bignon'

View file

@ -19,7 +19,7 @@
from weboob.capabilities.bank import CapBank, AccountNotFound
from weboob.tools.backend import BaseBackend, BackendConfig
from weboob.tools.backend import BaseModule, BackendConfig
from weboob.tools.ordereddict import OrderedDict
from weboob.tools.value import ValueBackendPassword, Value
@ -29,7 +29,7 @@ from .browser import BanquePopulaire
__all__ = ['BanquePopulaireBackend']
class BanquePopulaireBackend(BaseBackend, CapBank):
class BanquePopulaireBackend(BaseModule, CapBank):
NAME = 'banquepopulaire'
MAINTAINER = u'Romain Bignon'
EMAIL = 'romain@weboob.org'

Some files were not shown because too many files have changed in this diff Show more