laurentb a écrit 274 commentaires

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

    Posté par  (site web personnel) . 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)
  • [^] # Re: Filtres CSS ?

    Posté par  (site web personnel) . En réponse à la dépêche Weboob : une version 1.1 pour son sixième anniversaire. Évalué à 7.

    On préfère historiquement le XPath car il est beaucoup plus puissant. Cependant dans les cas simples, c'est moche, et c'est plus difficile d'accès.

    À noter que l'on a ajouté la fonction has-class(class) au langage XPath, qui équivaut au .class des sélecteurs CSS. C'était de loin le plus gros défaut.

  • [^] # Re: Dépêche ?

    Posté par  (site web personnel) . En réponse au journal pyjobs - un job-board pour les agréger tous.. Évalué à 3. Dernière modification le 05 février 2016 à 14:29.

    En gros, Scrapy est plus « connu », ils ont un marketing hype et corporate, ce que l'on a pas (et qu'on ne sait pas faire). J'en suis bien conscient, mais ce n'est pas vraiment ce que j'ai en tête par référence.

    il est basé sur twister pour l'ordonancement des requêtes, la gestion asynchrone des requêtes ce qui est très puissant pour les problématiques de crawling.

    On a ça aussi, avec concurrent.futures.

    il propose un mécanisme de pipeline hyper souple qui te permet par exemple d'enchaîner les traitements pour dire "je prends l'information à tel endroit. Si elle n'est pas disponible ou pas conforme, je vais la chercher à tel endroit. etc, etc",

    On a ça aussi, fillobj, qui permet de remplir un objet à la demande. Suivant la manière dont il a été obtenu, ou du besoin, on économise des requêtes.

    il propose une architecture distribuable pour faire tourner des crawlers sur plusieurs machines et les alimenter gérer à partir d'un "master"

    On a pas, probablement jamais chez nous sauf à circonscrire les modules dans un mode de fonctionnement comme Scrapy (i.e. uniquement parcours de site et sans côté stateful du Browser). Ceci dit, je ne sais pas trop quelle est l'utilisation (c'est plutôt moi qui met le site à genoux avec une seule machine, du coup je mets des délais, d'ailleurs c'est quelque chose que l'on a pas nativement dans Weboob et qui a l'air bien faite chez Scrapy).

    il s'installe comem n'importe quel module python, donc compatible avec venv et la "généricité" associée

    On peut faire import weboob, et éventuellement utiliser WebNip pour initialiser les modules sans aucun fichier de config nécessaire. Ou si on veut utiliser seulement l'équivalent de Scrapy, on peut se cantonner à weboob.Browser, ce que je fais souvent pour des scripts jetables.

    J'aimerais pouvoir faire un "pip install weboob_apec" par exemple.

    On peut installer les modules via pip, ceux livrés avec weboob sont distribués via https://git.symlink.me/?p=weboob/modules.git;a=tree
    On a peu communiqué dessus et à ma connaissance il n'y a qu'un seul utilisateur.

    Rien n'empêche de faire la même chose avec les siens.

  • [^] # Re: Dépêche ?

    Posté par  (site web personnel) . En réponse au journal pyjobs - un job-board pour les agréger tous.. Évalué à 2.

    LE framework de référence

    Selon qui ?

    Je me demande toujours pourquoi weboob ne s'est pas basé dessus

    Scrappy ne fournit pas grand-chose par dessus requests et lxml, que weboob utilise aussi tout en proposant beaucoup plus de choses pour faciliter le développement. Il y avait plutôt « à faire » que « à refaire ».
    De plus, weboob fait bien plus que du "scraping", i.e. parcourir un site et en prendre les données. C'est un véritable outil d'automatisation qui n'a pas forcément besoin d'un parcours.
    Se baser sur Scrapy n'aurait donc aucun sens.

    il faut lutter pour trouver le code

    Je ne comprends pas trop vu qu'il y a bien plus de modules libres pour weboob que pour scrapy et que c'est une grande ressource de problèmes déjà résolus.

  • [^] # Re: Rome ne s'est pas faite en un jour.

    Posté par  (site web personnel) . En réponse au journal Free Mobile: C'est quoi leur projet?. Évalué à 3.

    Le filtrage est vraiment très pratique, il m'a d'ailleurs servi à bloquer un opérateur concurrent qui n'arrêtait pas de m'appeler.

    L'envoi de SMS par une API aussi.

  • [^] # Re: +1

    Posté par  (site web personnel) . En réponse au journal Budgea auto-hébergé ?. Évalué à 7.

    • nouveau cas pas encore géré (avec le temps ça arrive moins)
    • MAJ du site web, besoin d'adapter le parsing (c'est souvent pas grand chose, mais faut s'y replonger, et à distance ça ne marche plus)
    • bugs du site web (dates farfelus, ordre des opérations qui change, voire solde erroné chez Boursorama dans certains cas)

    C'est justement pour ça que weboob existe : il est impossible de maintenir ce genre de chose pour chaque projet. En plus, dans le cas des banques, il y a beaucoup de cas qui n'existent que pour un utilisateur. Même à notre niveau, il n'est pas facile d'être toujours à jour par rapport aux sites.

  • [^] # Re: Bankroot

    Posté par  (site web personnel) . En réponse au journal Budgea auto-hébergé ?. Évalué à 7.

    J'adore le nom du projet.

    Sinon je vois qu'il a inclus le code de weboob dans le dépôt - il faudrait plutôt utiliser un submodule (ou une autre meilleure solution, je ne suis pas sûr d'avoir compris pourquoi).

  • [^] # Re: forges

    Posté par  (site web personnel) . En réponse au journal SourceForge dans les choux. Évalué à 9.

    Même pas, la plupart des mailing list permettent d'envoyer un mail sans être inscrit. Les réponses seront aussi reçues par une technologie magique et révolutionnaire appelée destinataires multiples.

    Mais je ne suis pas surpris que les aficionados de GitHub ne savent même pas se servir d'un client mail.

  • [^] # Re: forges

    Posté par  (site web personnel) . En réponse au journal SourceForge dans les choux. Évalué à 3.

    Il n'y a pas besoin de s'inscrire.

  • [^] # Re: forges

    Posté par  (site web personnel) . En réponse au journal SourceForge dans les choux. Évalué à 4.

    tant que tu peux migrer tes donnees

    Pour exemple, si Git est très facile à migrer, le bugtracker de Github lui est propriétaire et est propriétaire des données. Bien sûr, on peut facilement coder un script pour migrer (par exemple, en utilisant Weboob !), mais dans le principe c'est un risque.

  • [^] # Re: forges

    Posté par  (site web personnel) . En réponse au journal SourceForge dans les choux. Évalué à 9.

    À l'heure actuelle, on peut se dire que github ne peut pas mourir. Regardez comme c'est populaire! Ben revenez quelques années en arrière, et on aurait dit la même chose de Sourceforge.

    Oui, c'est une vision assez commune qui je pense vient des plus jeunes, qui n'ont pas encore vu des centaines de sites mourir (pour avoir vécu la disparition de mon hébergeur de mails, je n'aime vraiment pas être dépendant d'un tiers !).

    Sans compter que toutes ces startup américaines perdent de l'argent et vivent principalement de leur investisseurs.

  • [^] # Re: forges

    Posté par  (site web personnel) . En réponse au journal SourceForge dans les choux. Évalué à 6.

    Ou alors utiliser git comme il a été conçu et envoyer des patchs par mail. Pas de compte requis où que ce soit.

  • [^] # Re: De la brutalité militante

    Posté par  (site web personnel) . En réponse au journal La communauté Open Source Américaine et la liberté d'expression. Évalué à 5.

    J'ai beau être pro-féministe, le comportement des militant(e)s de service est ici effrayant.

    Je pense que ces « militants » n'ont rien à faire de la cause, c'est un simple outil pour mettre en avant leur intérêts personnels. Aujourd'hui c'est le féminisme, mais ça pourrait très bien être autre chose.

    C'est le féminisme qui prend un gros coup d'image, alors que ça n'a pas grand-chose à voir.

    Puisque tu parles d'ESR : http://esr.ibiblio.org/?p=6642 le coup de la militante féministe ancienne militante raciste est assez amusant, mais pas étonnant (et pas le seul, il y a carrément un neo-nazi)

  • [^] # Re: Communauté Open Source ?

    Posté par  (site web personnel) . En réponse au journal La communauté Open Source Américaine et la liberté d'expression. Évalué à 5.

    il y a des gens dans les deux camps

    Camps qui n'ont aucune importance pour un projet.

    Les deux camps importants sont les gens qui veulent avancer et ceux qui veulent se plaindre, et le changement d'un camp à un autre est très improbable.

    Je me suis bien rendu compte qu'il y a des gens qui vivent pour être offensés et qui n'appliquent même pas leur standards flous à eux-mêmes (par exemple le « code de conduite » ajouté au projet ci-dessus exclut clairement le plaignant !). Ils correspondent à peu près au trouble de la personnalité histrionique, Internet y étant malheureusement un terrain de jeu parfaitement adapté.

    Il n'y a absolument aucun intérêt à essayer de satisfaire des gens qui de toute façon se plaindront à nouveau (c'est même dangereux), et ne seront jamais des contributeurs (même mes appels à contributions non techniques n'ont rien donné !) et des utilisateurs. En plus, on risquerait de perdre des contributeurs, alors qu'ils sont déjà bien trop rares… tout comme le temps libre que l'on a pour contribuer.

    Il n'y a qu'une seule solution, et ce n'est pas de dire "Non", car c'est déjà donner de l'attention : c'est d'ignorer complètement ces gens plutôt que d'entretenir leur maladie. Ou alors, de l'utiliser pour se faire de la publicité.

  • [^] # Re: service-public.fr utilise toujours RC4

    Posté par  (site web personnel) . En réponse à la dépêche Firefox : version 38. Évalué à 1.

    Tout comme un certain nombre de banques françaises.

  • [^] # Re: Propreté, standardisation et scraping

    Posté par  (site web personnel) . En réponse à la dépêche Création d'entreprise et logiciel libre - Romain Bignon de la société Budget Insight. Évalué à 2.

    S'il passe par un intermédiaire de paiement, il n'a jamais accès au numéro.

    Si il te le demande directement sur son site, il y a des chances qu'il le garde, ce que tu peux confirmer facilement quand il te le propose à nouveau (du genre Amazon).

  • [^] # Re: Propreté, standardisation et scraping

    Posté par  (site web personnel) . En réponse à la dépêche Création d'entreprise et logiciel libre - Romain Bignon de la société Budget Insight. Évalué à 10.

    Beaucoup de banques n'y connaissent rien en sécurité. Un bon nombre ne savent même pas configurer SSL correctement. Les mots de passe sont restreints en taille et en caractères autorisées. Les pavés numériques n'embêtent que les clients, les keyloggers savent faire des screenshots.

    Les leçons sur la sécurité devraient fonctionner dans l'autre sens, ce sont les banques qui devraient suivre les procédures de sécurité des autres.

  • [^] # Re: Weboob

    Posté par  (site web personnel) . En réponse au journal Extraction de données du web - introduction à Scrapy (journal bookmark). Évalué à 2.

    À ce que j'ai compris il ne s'occupe que des URLs, et parcourt une liste préformatée ou les liens présents dans les pages déjà visitées. Weboob lui ne voit pas d'URLs mais des objets (ça demande une correspondance objet vers URL), il peut donc récupérer des choses à la demande en plus de tout parcourir.

  • [^] # Re: Weboob

    Posté par  (site web personnel) . En réponse au journal Extraction de données du web - introduction à Scrapy (journal bookmark). Évalué à 3.

    scrapy est assez proche de ce que fait weboob.browser.

    À ma connaissance je n'ai pas trouvé d'équivalent des pages, filtres ou même d'une gestion des formulaires. En revanche il gère de base l'exportation des objets capturés ("pipeline").

    Il faudrait que je me penche un peu plus sur la question (notamment faire un comparatif de fonctionnalités car la question revient souvent) mais de loin scrapy m'apparait plein de suppositions sur la façon de gérer un site et semble surtout adapté au « scraping » plutôt qu'à l'interaction dynamique avec un site. À noter que j'utilise déjà weboob.browser pour aspirer des sites énormes ; je n'ai pas l'impression que certaines de mes problématiques soient gérées, comme récupérer les mises à jour de façon efficace, ce qui implique de repasser sur certaines URLs.

  • [^] # Re: .

    Posté par  (site web personnel) . En réponse au journal Un bond en avant pour Gitlab.com. Évalué à 2.

    Si, l'effet réseau, par exemple le fait que pour trouver un job cool dans l'informatique il devient presque obligatoire d'avoir un profil github avantageux.

    C'est pour ça que j'ai un compte GitHub, mais ce n'est plus qu'un vulgaire miroir automatisé ; je n'y mets généralement pas les doigts.

  • [^] # Re: Ils ne doivent pas aimer la pâtée pour chiens

    Posté par  (site web personnel) . En réponse au journal Pourquoi ce nom ?. Évalué à 10.

    C'est beaucoup plus simple :

    app app app

  • [^] # Re: Non

    Posté par  (site web personnel) . En réponse au journal Une backdoor de la NSA dans OpenSSH ?. Évalué à 4.

    Selon moi, rien de bien sensationnel, et rien de spécifique aux agences gouvernementales à sigle à trois lettres

    Oui, j'ai déjà vu ça dans la nature, et ce n'était sûrement pas la NSA derrière, mais plutôt des « script kiddies » qui se sont même gourés d'architecture, du coup ça ne fonctionnait plus.

  • [^] # Re: weboob

    Posté par  (site web personnel) . En réponse au journal Weboob, la consécration. Évalué à 2.

    git c'est de l'argot anglais (pas américain) assez peu connu, ça ne m'étonne donc pas.

    gimp est déjà sûrement plus connu, mais pas trop des français.

    boob a deux sens, les seins et une personne pas très maline, les deux étant assez « mignons », dans le sens où on ne l'utilise pas comme insulte. Et n'oublions pas le booby :)

  • [^] # Re: weboob

    Posté par  (site web personnel) . En réponse au journal Weboob, la consécration. Évalué à 5. Dernière modification le 13 janvier 2015 à 20:48.

    C'est étonnant car les modules de banques sont utilisés par un bon nombre d'entreprises qui payent pour que ça marche.

    Alors qu'il y a bien d'autres modules qui sont malheureusement cassés et nous n'avons pas le temps de tout corriger.

    Sinon je peux comprendre que ANAL+ sur la page d'accueil du site ne fasse pas classe (pour ma part, la vraie honte c'est que la télé existe encore en 2015), mais Jérome Kerviel c'est gênant ? C'est bien la preuve qu'on ne peut satisfaire personne.

  • [^] # Re: Un bookmark légèrement plus fourni ?

    Posté par  (site web personnel) . En réponse au journal Weboob, la consécration. Évalué à 2.

    Il faut arrêter avec la mauvaise foi.

    C'est un vrai boulot, et il ne sera certainement jamais fait à titre gratuit* (ou quelqu'un se dévoue pour le faire à notre place).
    Il de plus trouver un nouveau nom, facile à trouver sur un moteur de recherche, raisonnablement facile à écrire et prononcer. Et faire de même pour toutes les applications, et encore une fois, les icônes.

    Weboob a des centaines d'utilisateurs directs, et des dizaines de projets l'utilisent. Eux aussi vont devoir faire les changements. Et enfin tous les packages et sites sur lesquels weboob est publié.

    (*) Je veux bien lancer un fork de weboob politiquement correct si je suis payé à le faire, et que mon salaire soit doublé si quelqu'un trouve encore matière à se plaindre.