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.
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.
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.
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.
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).
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.
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.
À 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.
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)
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é.
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).
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.
À 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.
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.
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.
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.
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 :)
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.
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.
[^] # Re: Weboob dans la vie courante
Posté par laurentb (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 :
En bonus, activer le logging est très utile.
[^] # Re: Filtres CSS ?
Posté par laurentb (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 laurentb (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.
On a ça aussi, avec
concurrent.futures
.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.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).
On peut faire
import weboob
, et éventuellement utiliserWebNip
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.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 laurentb (site web personnel) . En réponse au journal pyjobs - un job-board pour les agréger tous.. Évalué à 2.
Selon qui ?
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.
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 laurentb (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 laurentb (site web personnel) . En réponse au journal Budgea auto-hébergé ?. Évalué à 7.
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 laurentb (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 laurentb (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 laurentb (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 laurentb (site web personnel) . En réponse au journal SourceForge dans les choux. Évalué à 4.
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 laurentb (site web personnel) . En réponse au journal SourceForge dans les choux. Évalué à 9.
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 laurentb (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 laurentb (site web personnel) . En réponse au journal La communauté Open Source Américaine et la liberté d'expression. Évalué à 5.
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 laurentb (site web personnel) . En réponse au journal La communauté Open Source Américaine et la liberté d'expression. Évalué à 5.
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 laurentb (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 laurentb (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 laurentb (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 laurentb (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 laurentb (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 laurentb (site web personnel) . En réponse au journal Un bond en avant pour Gitlab.com. Évalué à 2.
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 laurentb (site web personnel) . En réponse au journal Pourquoi ce nom ?. Évalué à 10.
C'est beaucoup plus simple :
[^] # Re: Non
Posté par laurentb (site web personnel) . En réponse au journal Une backdoor de la NSA dans OpenSSH ?. Évalué à 4.
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 laurentb (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 laurentb (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 laurentb (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.