• [^] # Re: Weboob dans la vie courante

    Posté par . En réponse à la dépêche Weboob : une version 1.1 pour son sixième anniversaire. Évalué à 10.

    Je confirme que c'est possible, nous sommes plusieurs à utiliser Browser directement pour des petits programmes jetables.

    Il y a sûrement un tutoriel à écrire, en attendant :

    from weboob.browser import URL, PagesBrowser
    from weboob.browser.pages import HTMLPage
    from weboob.browser.filters.standard import CleanText
    class MyPage(HTMLPage):
     def get_myinfo():
     return CleanText('//my/xpath')(self.doc)
    class MyBrowser(PagesBrowser):
     BASEURL = 'http://www.mywebsite.com/'
     mypage = URL('mypage\.html', MyPage)
     def get_myinfo():
     return self.mypage.stay_or_go().get_myinfo()
    b = MyBrowser()
    print b.get_myinfo()

    En bonus, activer le logging est très utile.

    import logging
    from weboob.tools.log import createColoredFormatter
    logging.getLogger('').setLevel(logging.DEBUG)
    fmt = '%(asctime)s:%(levelname)s:%(name)s' + \
     ':%(filename)s:%(lineno)d:%(funcName)s%(message)s'
    handler = logging.StreamHandler(sys.stderr)
    handler.setFormatter(createColoredFormatter(sys.stderr, fmt))
    logging.getLogger('').addHandler(handler)