improve the dummy script

This commit is contained in:
Romain Bignon 2010-04-01 20:25:32 +02:00
commit 3d0c80c323
5 changed files with 24 additions and 11 deletions

View file

@ -22,22 +22,34 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
from weboob import Weboob
from weboob.capabilities.messages import ICapMessages, ICapMessagesReply
from weboob.capabilities.travel import ICapTravel
from weboob.tools.application import BaseApplication
class Application(BaseApplication):
APPNAME = 'dummy'
def main(self, argv):
self.weboob.load_backends()
if not self.weboob.load_backends():
self.weboob.load_modules()
for name, backend in self.weboob.iter_backends():
print '= Processing backend name = %s' % name
print 'Backend [%s]' % name
if backend.has_caps(ICapMessages):
print '== Backend is ICapMessages => print its messages'
print '|- ICapMessages [Print its messages]'
for message in backend.iter_messages():
print '=== %s' % message
print '| |- %s' % message
if backend.has_caps(ICapMessagesReply):
print '== Backend is ICapMessagesReply => TODO'
print '|- ICapMessagesReply [TODO]'
if backend.has_caps(ICapTravel):
print '|- ICapTravel.stations [Search station \'defense\']'
s = None
for station in backend.iter_station_search('defense'):
print '| |- [%s] %s' % (station.id, station.name)
if s is None:
s = station.id
print '|- ICapTravel.departures [Departures from \'%s\']' % s
for departure in backend.iter_station_departures(s):
print '| |- [%s] %s at %s to %s' % (departure.id, departure.type, departure.time.strftime("%H:%M"), departure.arrival_station)
if __name__ == '__main__':
Application.run()

View file

@ -1,6 +1,4 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# vim: ft=python et softtabstop=4 cinoptions=4 shiftwidth=4 ts=4 ai
"""
Copyright(C) 2010 Romain Bignon

View file

@ -42,9 +42,11 @@ class Weboob:
def load_backends(self, caps=None, names=None):
self.backends.update(self.modules_loader.load_backends(self.get_backends_filename(), caps, names))
return self.backends
def load_modules(self, caps=None, names=None):
self.backends.update(self.modules_loader.load_modules_as_backends(caps, names))
return self.backends
def iter_backends(self, caps=None):
for name, backend in self.backends.iteritems():

View file

@ -1,6 +1,4 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# vim: ft=python et softtabstop=4 cinoptions=4 shiftwidth=4 ts=4 ai
"""
Copyright(C) 2010 Romain Bignon
@ -26,8 +24,11 @@ import re
from weboob import Weboob
class BaseApplication(object):
# Application name
APPNAME = ''
# Default configuration
CONFIG = {}
# Configuration directory
CONFDIR = os.path.join(os.path.expanduser('~'), '.weboob')
def __init__(self):

View file

@ -37,7 +37,7 @@ else:
return HTMLParser.parse(data, encoding='iso-8859-1')
import re
import time
from logging import warning, error
from logging import warning, error, debug
from copy import copy
try:
@ -220,7 +220,7 @@ class Browser(mechanize.Browser):
warning('Ho my fucking god, there isn\'t any page named %s' % result.geturl())
return
print '[%s] Gone on %s' % (self.username, result.geturl())
debug('[%s] Gone on %s' % (self.username, result.geturl()))
self.last_update = time.time()
document = self.__parser.parse(result)