tag:linuxfr.org,2005:/users/ffourcot/newsLinuxFr.org : les dépêches de Florent Fourcot2017-09-26T16:12:44+02:00/favicon.pngtag:linuxfr.org,2005:News/382062017-09-21T14:56:02+02:002017-09-24T03:38:03+02:00Weboob sort une nouvelle version qui va vous porter chanceLicence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<div><p><a href="http://weboob.org">Weboob</a> (<em>Web Outside Of Browsers</em>) est un ensemble d’applications et de modules interagissant avec des sites Web.</p>
<p>Ce projet peut également être utilisé comme une bibliothèque permettant de grandement simplifier l’extraction de données des sites Web. Pour du prêt à l’emploi, Weboob compte aujourd’hui 241 <a href="http://weboob.org/modules">modules</a> qui permettent d’accéder à de nombreux sites Web sans passer par un navigateur standard.</p>
<p>Sans être exhaustive, la suite de la dépêche vous propose de découvrir quelques nouveautés de la nouvelle version 1.3, sortie mercredi 20 septembre 2017, que ce soit pour les utilisateurs et utilisatrices ou les développeuses et développeurs. Nous détaillons également la vie du projet en fin de dépêche, notamment notre participation à la <a href="//linuxfr.org/news/programme-de-la-pyconfr-2017"><em>PyConFr</em> du 21 au 24 septembre 2017</a>.</p></div><ul><li>lien nᵒ 1 : <a title="http://weboob.org" hreflang="en" href="https://linuxfr.org/redirect/100652">Site Web</a></li><li>lien nᵒ 2 : <a title="http://weboob.org/news" hreflang="en" href="https://linuxfr.org/redirect/100653">Liste complète des changements</a></li><li>lien nᵒ 3 : <a title="http://weboob.org/install" hreflang="en" href="https://linuxfr.org/redirect/100654">Installation</a></li><li>lien nᵒ 4 : <a title="http://weboob.org/modules" hreflang="en" href="https://linuxfr.org/redirect/100655">Modules</a></li><li>lien nᵒ 5 : <a title="http://weboob.org/applications/" hreflang="en" href="https://linuxfr.org/redirect/100656">Applications</a></li><li>lien nᵒ 6 : <a title="https://git.weboob.org/weboob/devel" hreflang="en" href="https://linuxfr.org/redirect/100657">Code sur le GitLab du projet</a></li><li>lien nᵒ 7 : <a title="https://linuxfr.org/news/programme-de-la-pyconfr-2017" hreflang="fr" href="https://linuxfr.org/redirect/100658">Dépêche sur la PyConFr 2017</a></li></ul><div><h2 class="sommaire">Sommaire</h2>
<ul class="toc">
<li>
<a href="#services-bancaires-et-administratifs">Services bancaires et administratifs</a><ul>
<li><a href="#ajout-de-b%C3%A9n%C3%A9ficiaire-pour-les-virements">Ajout de bénéficiaire pour les virements</a></li>
<li><a href="#nouveaux-modules">Nouveaux modules</a></li>
</ul>
</li>
<li><a href="#logements">Logements</a></li>
<li><a href="#vie-priv%C3%A9e-et---auto-update">Vie privée et --auto-update</a></li>
<li><a href="#nouvelle-application-qgalleroob">Nouvelle application QGalleroob</a></li>
<li>
<a href="#dans-les-entrailles-du-d%C3%A9veloppement">Dans les entrailles du développement</a><ul>
<li><a href="#prise-en-charge-des-versions-de-python">Prise en charge des versions de Python</a></li>
<li><a href="#nouveaux-filtres">Nouveaux filtres</a></li>
<li><a href="#outils-de-d%C3%A9bogage">Outils de débogage</a></li>
</ul>
</li>
<li><a href="#liste-exhaustive-des-nouveaux-modules">Liste exhaustive des nouveaux modules</a></li>
<li>
<a href="#communaut%C3%A9">Communauté</a><ul>
<li><a href="#derni%C3%A8re-assembl%C3%A9e-g%C3%A9n%C3%A9rale">Dernière assemblée générale</a></li>
<li><a href="#pyconfr2017">PyConFr 2017</a></li>
</ul>
</li>
<li><a href="#contributeurs">Contributeurs</a></li>
</ul><h2 id="services-bancaires-et-administratifs">Services bancaires et administratifs</h2>
<h3 id="ajout-de-bénéficiaire-pour-les-virements">Ajout de bénéficiaire pour les virements</h3>
<p>Le système de virement avait été revu lors de la précédente version, afin de permettre un processus plus complet notamment lors de la demande d’informations complémentaires (exemple : un code envoyé par SMS). Nous franchissons une nouvelle étape dans la prise en charge de ces virements en permettant désormais l’ajout de bénéficiaires pour les virements (grâce à la sous‐capacité <code>CapBankTransferAddRecipient</code>). Si le site utilise un code unique par SMS, <em>boobank</em> le demandera pour finaliser l’ajout de la même manière que pour les virements. Neuf modules ont déjà cette fonctionnalité activée.</p>
<h3 id="nouveaux-modules">Nouveaux modules</h3>
<p>Les modules bancaires sont de nouveau à la pointe grâce au soutien de l’entreprise <a href="https://www.budget-insight.com/">Budget Insight</a> qui utilise et contribue massivement à Weboob. On compte ainsi dix nouveaux modules bancaires et la liste des changements sur les modules existants est assez impressionnante.</p>
<p>Les modules qui permettent de simplifier la gestion administrative au quotidien ne sont pas en reste. On peut noter le téléchargement des fiches de paie pour tous les fonctionnaires d’état via le module <a href="https://ensap.gouv.fr/web/accueilnonconnecte">ENSAP</a>, ainsi que le téléchargement des factures du fournisseur de gaz Lampiris. N’oublions pas, pour les Parisiens, la gestion des réservations de livres dans les bibliothèques (module <em>bibliothequesparis</em>). On regrettera en revanche la disparition du module pour les bibliothèques rennaises, qui n’était plus maintenu.</p>
<h2 id="logements">Logements</h2>
<p>Il est très difficile de chercher un logement en zone densément peuplée. Les offres sont très nombreuses, souvent dupliquées sur plusieurs sites. Le travail de veille est lourd et les logements partent très vite. C’est ainsi qu’un contributeur a développé <a href="https://git.phyks.me/Phyks/flatisfy">Flatisfy</a>, en utilisant les modules immobiliers de Weboob comme <em>backend</em>. L’objectif de cette application est de vous permettre de spécifier des filtres pour votre recherche de logements (secteur, loyer, nombre de pièces, temps de trajet), puis d’offrir une interface conviviale autour de ces résultats, en groupant les doublons et en affichant tous les résultats de façon uniforme, quel que soit le site d’origine de l’annonce. Flatisfy a été testé et approuvé à Lyon et Paris pour l’instant. Pour plus d’informations, vous pouvez regarder <a href="https://phyks.me/2017/08/looking-for-a-flat-the-modern-way.html#looking-for-a-flat-the-modern-way">cet article de l’auteur</a>.</p>
<p>Le développement de Flatisfy a été l’occasion de tester et mettre à jour les modules de recherche de logements. Outre les corrections de bogues sur les modules existants, les principaux changements sont :</p>
<ul>
<li>l’ajout d’un module pour récupérer les annonces de Foncia ;</li>
<li>l’homogénéisation des résultats retournés par les divers modules, afin que les numéros de téléphone soient formatés de façon similaire, et que toutes les informations disponibles soient bien récupérées ;</li>
<li>l’ajout d’un nouveau champ <code>utilities</code> sur les <code>Housing</code>, afin de mentionner si les charges sont incluses ou non dans le loyer récupéré par le module ;</li>
<li>l’ajout de deux nouveaux champs <code>rooms</code> et <code>bedrooms</code> sur <code>Housing</code>, afin d’avoir une façon homogène entre les modules de représenter le nombre de pièces et de chambres du bien.</li>
</ul><h2 id="vie-privée-et---auto-update">Vie privée et --auto-update</h2>
<p>Par défaut, les applications Weboob vérifiaient automatiquement les mises à jour des modules quand un module rencontrait une erreur. C’est très pratique dans un projet comme Weboob qui est face à des sites volatiles, mais a des conséquences négatives en termes de respect de la vie privée. Un utilisateur a ouvert un <a href="https://git.weboob.org/weboob/devel/issues/8">ticket avec un argumentaire détaillé</a> et nous avons pris en compte ses remarques. La mise à jour automatique est donc désormais optionnelle, désactivée par défaut et peut être réactivée à l’aide de <code>--auto-update</code>.</p>
<p>Rappelons qu’il est dans tous les cas toujours possible de rechercher des mises à jour manuellement avec <code>weboob update</code>.</p>
<h2 id="nouvelle-application-qgalleroob">Nouvelle application QGalleroob</h2>
<p>Une nouvelle application Qt permet de faire des recherches d’images et de galeries : QGalleroob.<br><img src="//img.linuxfr.org/img/68747470733a2f2f6c75742e696d2f344a694848654b626f502f326958336e7436346a6a684c38723056/2iX3nt64jjhL8r0V" alt="Screenshot QGalleroob" title="Source : https://lut.im/4JiHHeKboP/2iX3nt64jjhL8r0V"></p>
<h2 id="dans-les-entrailles-du-développement">Dans les entrailles du développement</h2>
<h3 id="prise-en-charge-des-versions-de-python">Prise en charge des versions de Python</h3>
<p>Le cœur de Weboob ainsi que les applications Weboob sont maintenant compatibles Python 2.7 et Python 3.<br>
De nombreux modules sont déjà compatibles Python 2 et Python 3, et de nouveaux seront portés au fur et à mesure. Les modules n’étant toujours pas compatibles sont dans une grande majorité des modules abandonnés, dont le fonctionnement est probablement douteux. Ils seront donc probablement supprimés dans les prochaines versions.</p>
<p>En fonction des retours sur Python 3 et de l’avancée du portage, il ne restera plus qu’une ou deux versions de Weboob qui prendront encore en charge Python 2.7. Nous prévoyons de changer de numéro majeur de version (et de passer donc à Weboob 2.0) au cours de l’année 2018, et donc à une version qui n’aura plus Python 2.7.</p>
<h3 id="nouveaux-filtres">Nouveaux filtres</h3>
<p>Les filtres sont des aides essentiels dans les modules Weboob, ils permettent notamment de simplifier l’extraction des données en utilisant une syntaxe très déclarative (il y a beaucoup de magie dedans). De nouveaux filtres spécialisés font leur apparition dans cette version :</p>
<ul>
<li>
<strong>AbsoluteLink</strong> : construit une adresse URL absolue à partir d’un lien HTML (contrairement au filtre <em>Link</em> qui retourne la valeur brute) ;</li>
<li>
<strong>FormValue</strong> : permet d’obtenir la valeur courante d’un élément de formulaire (par exemple dans un tag <em>select</em>) ;</li>
<li>
<strong>HasElement</strong> : retourne une valeur suivant la présence ou non d’un élément HTML ;</li>
<li>
<strong>QueryValue</strong> : retourne la valeur d’un paramètre contenu dans la partie <em>query</em> d’une URL (par exemple, <em>value</em> pour <code>url?param=value</code>).</li>
</ul><h3 id="outils-de-débogage">Outils de débogage</h3>
<p>Deux nouveaux mécanismes ont été ajoutés pour aider à trouver les problèmes quand on écrit un module.</p>
<p>Dans une session de débogage avec <em>pdb</em> (ou temporairement dans le code d’un module) :</p>
<pre><code class="python"><span class="o">>>></span> <span class="kn">import</span> <span class="nn">weboob</span>
<span class="o">>>></span> <span class="n">weboob</span><span class="o">.</span><span class="n">browser</span><span class="o">.</span><span class="n">elements</span><span class="o">.</span><span class="n">magic_highlight</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">el</span><span class="o">.</span><span class="n">xpath</span><span class="p">(</span><span class="s1">'.//div[has-class("foo")]'</span><span class="p">))</span></code></pre>
<p>Cela ouvrira la page courante dans un navigateur pour déboguer, avec tous les éléments correspondants à l’expression XPath, mis en surbrillance. Il est possible de mettre également en surbrillance toutes les zones d’une page qui sont extraites par le module. Pour cela, il faut ajouter <code>_highlight_el = 1</code> à la configuration du module que l’on veut déboguer.</p>
<p>Un autre outil très pratique est l’exportation de sessions et son chargement via une extension Web dans Firefox ou chrome. Dans le dossier <code>contrib</code>, un dossier complet nommé <code>webextension-session-importer</code> permet cette performance (voir le fichier <code>README</code> pour plus de détails).</p>
<h2 id="liste-exhaustive-des-nouveaux-modules">Liste exhaustive des nouveaux modules</h2>
<ul>
<li>bibliothequesparis (CapBook) ;</li>
<li>billetreduc (CapCalendarEvent) ;</li>
<li>blogspot (CapMessages) ;</li>
<li>bnppere (CapBank) ;</li>
<li>btpbanque (CapBank) ;</li>
<li>capeasi (CapBank) ;</li>
<li>cices (CapBank) ;</li>
<li>cityscoot (CapDocument) ;</li>
<li>cmes (CapBank) ;</li>
<li>cmmc (CapBank, CapContact) ;</li>
<li>ensap (CapDocument) ;</li>
<li>erehsbc (CapBank) ;</li>
<li>esalia (CapBank) ;</li>
<li>foncia (CapHousing) ;</li>
<li>lameteoagricole (CapWeather) ;</li>
<li>lampiris (CapDocument) ;</li>
<li>larousse (CapTranslate) ;</li>
<li>linebourse (CapBank) ;</li>
<li>myfoncia (CapDocument) ;</li>
<li>pixabay (CapFile, CapImage) ;</li>
<li>pradoepargne (CapBank) ;</li>
<li>tumblr (CapGallery) ;</li>
<li>zerobin (CapPaste).</li>
</ul><h2 id="communauté">Communauté</h2>
<h3 id="dernière-assemblée-générale">Dernière assemblée générale</h3>
<p>Le projet Weboob est protégé par une association qui a pour but de soutenir le développement et de permettre l’indépendance du projet par rapport à des entreprises qui peuvent être très contributrices (on les en remercie beaucoup). Si cette association n’est pas toujours très active, nous avons réuni une assemblée générale le 10 juillet 2017 à Paris. Le bureau de l’association (qui nomme notamment le <em>release manager</em>, ayant le pouvoir d’accepter ou refuser des contributions) a été entièrement reconduit.</p>
<p>Les membres du bureau sont cependant tous investis depuis longtemps dans le projet et seraient très volontiers prêts à céder leurs places à de nouveaux contributeurs ou contributrices.</p>
<h3 id="pyconfr2017">PyConFr 2017</h3>
<p>Les développeurs Weboob seront présents en force à cette édition de <a href="//linuxfr.org/news/programme-de-la-pyconfr-2017"><em>PyConFr</em></a> ! L’ensemble des membres du bureau de l’association sera notamment présent.</p>
<p>Un <a href="https://www.pycon.fr/2017/programme.html#atelier-presentation-weboob">atelier</a> sera animé le samedi 23 septembre 2017 de 14 h à 16 h, ce sera l’occasion de développer votre premier module. Deux conférences seront présentées le dimanche 24 septembre 2017 de 15 h à 16 h :</p>
<ul>
<li>
<a href="https://www.pycon.fr/2017/programme.html#weboob-le-navigatueur"><em>Weboob, le navigatueur</em></a> ;</li>
<li>
<a href="https://www.pycon.fr/2017/programme.html#la-puissance-du-scraping-web-avec-weboob"><em>La puissance du scraping Web avec Weboob</em></a>.</li>
</ul><p>N’hésitez pas à passer nous voir, poser des questions, faire vos premières contributions, discuter de l’avenir du projet, etc.</p>
<h2 id="contributeurs">Contributeurs</h2>
<p>Merci aux contributeurs qui ont participé à cette version :</p>
<ul>
<li>Baptiste Delpey ;</li>
<li>Barthélemy Gouby ;</li>
<li>Benjamin Bouvier ;</li>
<li>Benjamin Carton ;</li>
<li>Benjamin Tampigny ;</li>
<li>Christophe Lampin ;</li>
<li>David Kremer ;</li>
<li>Edouard Lambert ;</li>
<li>Florent Fourcot ;</li>
<li>Florian ;</li>
<li>Florian Duguet ;</li>
<li>François Revol ;</li>
<li>Frédéric Lépy ;</li>
<li>Guillaume Lundy ;</li>
<li>Guillaume Seznec ;</li>
<li>James Galt ;</li>
<li>Jean Walrave ;</li>
<li>Jonathan Schmidt ;</li>
<li>Juliette Fourcot ;</li>
<li>Laurent Bachelier ;</li>
<li>Louis Debeve ;</li>
<li>Matthieu Weber ;</li>
<li>Nicolas Cornu ;</li>
<li>
<em>P4ncake</em> ;</li>
<li>
<em>Phyks</em> (Lucas Verney) ;</li>
<li>Raymonde Philibert ;</li>
<li>Roger Philibert ;</li>
<li>Romain Bignon ;</li>
<li>Sébastien Jean ;</li>
<li>Simon Lipp ;</li>
<li>Théo Dorée ;</li>
<li>Vincent Ardisson ;</li>
<li>Vincent Paredes ;</li>
<li>
<em>ZeHiro</em>.</li>
</ul><p><a href="http://weboob.org">Weboob</a> est un projet qui vit grâce à ses <a href="http://weboob.org/#authors">contributeurs</a>. Si vous souhaitez l’améliorer et que vous connaissez le Python (ou pas, des besoins sur la documentation et la qualité des icônes se font sentir), n’hésitez pas à <a href="http://dev.weboob.org/guides/contribute">contribuer</a>.</p></div><div><a href="https://linuxfr.org/news/weboob-sort-une-nouvelle-version-qui-va-vous-porter-chance.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/112708/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/news/weboob-sort-une-nouvelle-version-qui-va-vous-porter-chance#comments">ouvrir dans le navigateur</a>
</p>
Florent FourcotZeroHeureDavy DefaudBenoît Sibaudhttps://linuxfr.org/nodes/112708/comments.atomtag:linuxfr.org,2005:News/377812017-01-12T21:32:49+01:002017-01-16T16:11:40+01:00Weboob s’offre une nouvelle version pour fêter la nouvelle annéeLicence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<div><p><a href="http://weboob.org">Weboob</a> (<em>Web Outside Of Browsers</em>) est un ensemble d’applications interagissant avec des sites web.</p>
<p>Pour fêter la nouvelle année, l’équipe de développeurs de Weboob a mis les bouchées doubles pour réussir la sortie d’une nouvelle version. Cette version 1.2 est l’aboutissement d’un travail très actif durant tout le cycle de développement, avec plus de 1 400 <em>commits</em> en onze mois, écrits par 29 contributeurs différents.</p>
<p>En plus de fournir une bibliothèque permettant de grandement simplifier l’extraction de données des sites, Weboob compte aujourd’hui 220 <a href="http://weboob.org/modules">modules</a> prêts à l’emploi pour accéder à de nombreux sites Web sans passer par un navigateur standard.</p>
<p>Sans être exhaustive, la suite de la dépêche vous propose de découvrir quelques nouveautés de cette version, que ce soit pour les utilisatrices et utilisateurs, ou les développeuses et développeurs.</p></div><ul><li>lien nᵒ 1 : <a title="http://weboob.org/" hreflang="en" href="https://linuxfr.org/redirect/99086">Site Web</a></li><li>lien nᵒ 2 : <a title="http://weboob.org/news" hreflang="en" href="https://linuxfr.org/redirect/99087">Liste complète des changements</a></li><li>lien nᵒ 3 : <a title="http://weboob.org/install" hreflang="en" href="https://linuxfr.org/redirect/99088">Installation</a></li><li>lien nᵒ 4 : <a title="http://weboob.org/applications/" hreflang="en" href="https://linuxfr.org/redirect/99089">Applications</a></li><li>lien nᵒ 5 : <a title="http://dev.weboob.org/" hreflang="en" href="https://linuxfr.org/redirect/99090">Documentation pour le développement</a></li><li>lien nᵒ 6 : <a title="http://association.weboob.org/" hreflang="fr" href="https://linuxfr.org/redirect/99091">Association Weboob</a></li></ul><div><h2 class="sommaire">Sommaire</h2>
<ul class="toc">
<li><a href="#applications-graphiques-et-passage-%C3%A0-qt5">Applications graphiques et passage à Qt 5</a></li>
<li><a href="#banques-factures-que-du-bon">Banques, factures, que du bon</a></li>
<li><a href="#logements">Logements</a></li>
<li><a href="#gitlab-ci">GitLab CI</a></li>
<li>
<a href="#du-c%C3%B4t%C3%A9-des-d%C3%A9veloppeuses">Du côté des développeuses</a><ul>
<li><a href="#h%C3%A9ritage-des-modules-navigateurs-et-pages">Héritage des modules, navigateurs et pages</a></li>
<li><a href="#prise-en-charge-des-versions-de-python">Prise en charge des versions de Python</a></li>
<li>
<a href="#am%C3%A9liorations-du-navigateur">Améliorations du navigateur</a><ul>
<li><a href="#partialhtmlpage">PartialHTMLPage</a></li>
</ul>
</li>
<li><a href="#cachemixin">CacheMixin</a></li>
<li><a href="#d%C3%A9bogage-simplifi%C3%A9">Débogage simplifié</a></li>
<li><a href="#encodeur-json">Encodeur JSON</a></li>
</ul>
</li>
<li><a href="#petites-nouvelles">Petites nouvelles</a></li>
<li><a href="#contributeurs">Contributeurs</a></li>
</ul><h2 id="applications-graphiques-et-passage-à-qt5">Applications graphiques et passage à Qt 5</h2>
<p>Si au niveau des fonctionnalités les applications graphiques n’ont pas toutes évolué, on peut noter, en revanche, le passage de toutes les applications de Qt 4 vers <a href="http://doc.qt.io/qt-5/qt5-intro.html">Qt 5</a>.</p>
<p>Au niveau des améliorations notables, on peut citer les applications <a href="http://weboob.org/applications/qcineoob">QCineoob</a> et <a href="http://weboob.org/applications/qcookboob">QCookboob</a> qui sont désormais plus claires en affichant les résultats de recherches, gagnent en clarté au niveau des différents onglets et s’enrichissent d’un nouveau raccourci clavier (<code>Alt</code> + <code>←</code>) pour revenir en arrière.</p>
<p>Enfin, la nouvelle application <a href="http://weboob.org/applications/qbooblyrics">QBoobLyrics</a> fait son apparition. Elle permet de chercher et afficher des retranscriptions de textes de chansons.</p>
<h2 id="banques-factures-que-du-bon">Banques, factures, que du bon</h2>
<p><a href="https://www.budget-insight.com">Budget Insight</a> (BI), avec plus de 60 % des changements de cette version, est le plus gros contributeur de Weboob, principalement sur les connecteurs bancaires et de factures.</p>
<p>Le projet a bénéficié d’une refonte de la gestion des virements, qui sont proposés professionnellement par BI à travers leur API, et le portage d’une partie des connecteurs bancaires vers la nouvelle <em>capability</em> CapBankTransfer.</p>
<p>Il est donc aisé, à partir de l’application <a href="http://weboob.org/applications/boobank"><em>boobank</em></a>, d’initier des virements <a href="https://fr.wikipedia.org/wiki/SEPA" title="Définition Wikipédia">SEPA</a> vers les bénéficiaires internes et externes.</p>
<p>Cela se retrouve également dans l’application mobile (propriétaire) Budgea : <img src="//img.linuxfr.org/img/68747470733a2f2f7062732e7477696d672e636f6d2f6d656469612f437a3030665942585541455f6c75492e6a70673a6c61726765/Cz00fYBXUAE_luI.jpg:large" alt="capture d’écran de Budgea" title="Source : https://pbs.twimg.com/media/Cz00fYBXUAE_luI.jpg:large"></p>
<p>Dans les autres nouveautés, les informations concernant votre conseiller bancaire sont également récupérées, à travers la commande <code>advisor</code> : une raison de moins de vous connecter au site de votre banque !</p>
<h2 id="logements">Logements</h2>
<p>Weboob suit les grandes tendances, y compris le boom de l’immobilier et les difficultés pour trouver une location dans certaines régions de France. Les applications <a href="http://weboob.org/applications/qflatboob">QFlatBoob</a> et <a href="http://weboob.org/applications/flatboob"><em>flatboob</em></a> affichent désormais le prix au mètre carré des logements, et gagnent un peu en ergonomie quand des champs sont manquants (oui, il existe des annonces immobilières sans la surface).</p>
<h2 id="gitlab-ci">GitLab CI</h2>
<p><a href="http://buildbot.weboob.org/">Buildbot</a> était utilisé jusqu’à présent pour faire tourner les tests unitaires des modules de Weboob. Les outils existants étaient devenus obsolètes et peu utilisés, et les <em>builders</em> n’étaient plus tous maintenus et disponibles. Du coup, les tests unitaires étaient peu utilisés et peu surveillés.</p>
<p>Avec la migration depuis le Redmine sur <a href="https://symlink.me/"><em>symlink.me</em></a> vers un <a href="http://git.weboob.org/">tout nouveau GitLab</a>, l’intégration continue a été repensée pour utiliser <a href="https://git.weboob.org/weboob/devel/pipelines">GitLab CI</a>.</p>
<p>Dorénavant, un maximum de tests unitaires sera effectué à chaque <em>commit</em>. Ceci implique :</p>
<ul>
<li>de vérifier que la dernière branche de développement compile ;</li>
<li>de vérifier que les modules passent un certain nombre de <a href="https://git.weboob.org/weboob/devel/blob/master/tools/pyflakes.sh">règles de
codage</a> et
que les modules <a href="https://git.weboob.org/weboob/devel/blob/master/tools/weboob_lint.py">ont tous des icônes et des tests
unitaires</a> ;</li>
<li>enfin, de faire tourner le plus de tests unitaires possible sur Weboob et les
modules, en générant un rapport de couverture de code.</li>
</ul><p>Pour ce dernier point, un des gros changements apporté est la possibilité de faire tourner un maximum de tests sans identifiants pour le module à tester, en passant automatiquement les tests nécessitant des identifiants. Il est bien entendu possible de spécifier un fichier de <em>back‐end</em> à utiliser pour fournir des identifiants à certains modules et faire tourner encore plus de tests unitaires.</p>
<p>En plus de ces tests unitaires centralisés, chaque contributeur est invité à lancer sa propre instance de tests chez lui, pour les modules ne pouvant fonctionner sans identifiants spécifiques, afin d’envoyer le maximum de tests et de fournir <a href="https://ci.weboob.org">une visualisation Web</a> permettant de suivre en un coup d’œil l’évolution du statut des modules au cours du temps.</p>
<h2 id="du-côté-des-développeuses">Du côté des développeuses</h2>
<h3 id="héritage-des-modules-navigateurs-et-pages">Héritage des modules, navigateurs et pages</h3>
<p>Weboob, dans sa volonté de conquérir <s>le monde, Minus, et de lui imposer sa vision sexiste</s> de plus en plus d’utilisat[eur][rice]s, avait besoin dans certains cas de gagner en lisibilité quant au nommage de ses modules.</p>
<p>La question qui se posait était la suivante : comment gérer proprement les modules <em>cic</em> et <em>credit mutuel</em> qui partagent exactement le même moteur de site (et bien d'autres encore, mais il fallait bien choisir un exemple concret pour que la famille Michu dans son ensemble [père, mère et enfants de tous sexes et de tous âges] comprenne), dont les sites sont quasi-identiques, cela, sans dupliquer de code ?</p>
<p>Une réponse aurait pu être de regrouper l’analyse de ces deux sites dans un seul module, mais, malheureusement, cela posait d’autres questions. Il faut supprimer l’un des modules, lequel ? Comment indiquer aux utilisat[eur][rice]s de ce module (disons CIC) supprimé, d’utiliser l’autre ? Et, surtout, comment un[e] utilisat[eur][rice] lambda nommé[e] M[onsieur][adame] Michu, saura‐t‐[il][elle] qu’[il][elle] doit utiliser le module (disons CreditMutuel) pour regarder ses comptes domiciliés au CIC ?</p>
<p>La réponse que nous avons trouvée est de passer par l’héritage entre <em>back‐ends</em>, que ce soit au niveau des classes héritées de modules, <em>browsers</em> et pages.</p>
<p>Les classes <em>AbstractModule</em>, <em>AbstractBrowser</em> et <em>AbstractPage</em> ont ainsi vu le jour !</p>
<p>Par exemple, le fichier <code>module.py</code> du CIC ne contient maintenant plus que ça (commentaires et importations mis à parts) :</p>
<pre><code class="python"> <span class="k">class</span> <span class="nc">CICModule</span><span class="p">(</span><span class="n">AbstractModule</span><span class="p">,</span> <span class="n">CapBankTransfer</span><span class="p">,</span> <span class="n">CapContact</span><span class="p">):</span>
<span class="n">NAME</span> <span class="o">=</span> <span class="s">'cic'</span>
<span class="n">MAINTAINER</span> <span class="o">=</span> <span class="s">u'Julien Veyssier'</span>
<span class="n">EMAIL</span> <span class="o">=</span> <span class="s">'julien.veyssier@example.fr'</span>
<span class="n">VERSION</span> <span class="o">=</span> <span class="s">'1.2'</span>
<span class="n">DESCRIPTION</span> <span class="o">=</span> <span class="s">u'CIC'</span>
<span class="n">LICENSE</span> <span class="o">=</span> <span class="s">'AGPLv3+'</span>
<span class="n">CONFIG</span> <span class="o">=</span> <span class="n">BackendConfig</span><span class="p">(</span><span class="n">ValueBackendPassword</span><span class="p">(</span><span class="s">'login'</span><span class="p">,</span> <span class="n">label</span><span class="o">=</span><span class="s">'Identifiant'</span><span class="p">,</span> <span class="n">masked</span><span class="o">=</span><span class="bp">False</span><span class="p">),</span>
<span class="n">ValueBackendPassword</span><span class="p">(</span><span class="s">'password'</span><span class="p">,</span> <span class="n">label</span><span class="o">=</span><span class="s">'Mot de passe'</span><span class="p">))</span>
<span class="n">BROWSER</span> <span class="o">=</span> <span class="n">CICBrowser</span>
<span class="n">PARENT</span> <span class="o">=</span> <span class="s">'creditmutuel'</span>
<span class="k">def</span> <span class="nf">create_default_browser</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="n">browser</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">create_browser</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">weboob</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">config</span><span class="p">[</span><span class="s">'login'</span><span class="p">]</span><span class="o">.</span><span class="n">get</span><span class="p">(),</span> <span class="bp">self</span><span class="o">.</span><span class="n">config</span><span class="p">[</span><span class="s">'password'</span><span class="p">]</span><span class="o">.</span><span class="n">get</span><span class="p">())</span>
<span class="n">browser</span><span class="o">.</span><span class="n">new_accounts</span><span class="o">.</span><span class="n">urls</span><span class="o">.</span><span class="n">insert</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="s">"/mabanque/fr/banque/comptes-et-contrats.html"</span><span class="p">)</span>
<span class="k">return</span> <span class="n">browser</span></code></pre>
<p>L’introduction de ces nouveautés a aussi permis de gérer différemment les classes génériques qui permettaient de faciliter l’analyse de sites de journaux numériques. Jadis, ces facilitateurs étaient placés dans la partie <em>core</em> de Weboob, partie qui ne pouvait être mise à jour (en cas de <s>bogue</s> d’errance de développement dans les sites <em>scrappés</em>) qu’avec la publication d’une nouvelle version de (ne vous en cachez pas) votre outil préféré.</p>
<p>Dorénavant, il suffit d’étendre un nouveau module spécialement créé pour l’occasion et qui n’implémente aucune <em>capability</em> ; pour ne pas le nommer <em>genericnewspaper</em>, afin de profiter de ces facilitateurs. Ce dernier, comme tous les autres modules, peut être mis à jour, alléluia, via un simple <code>weboob update</code>.</p>
<p>Par exemple, le module <code>minutes20</code> (pour gérer le journal <em>20 minutes</em>), se contente d’hériter de <code>GenericNewspaper</code>, de configurer l’adresse URL d’un article, les expressions <a href="https://fr.wikipedia.org/wiki/XPath" title="Définition Wikipédia">XPath</a> des articles, et c’est à peu près tout.</p>
<h3 id="prise-en-charge-des-versions-de-python">Prise en charge des versions de Python</h3>
<p>Comme annoncé lors de la dernière sortie, Weboob 1.1 était la dernière version à prendre en charge Python 2.6. Python 2.7 est donc la seule version prise en charge par Weboob 1.2.</p>
<p>Rappelons que ce sont les anciens modules utilisant la bibliothèque <a href="http://wwwsearch.sourceforge.net/mechanize/"><em>mechanize</em></a> (à travers <code>weboob.deprecated.browser</code>) qui retiennent Weboob à Python 2.<br>
Tous les nouveaux modules (depuis Weboob 1.0) sont écrits avec Browser 2 (qui utilise la bibliothèque <a href="http://docs.python-requests.org/en/master/"><em>requests</em></a>, compatible avec Python 3). D’anciens modules sont également portés vers Browser 2 au fil de l’eau.</p>
<p>En vue d’un passage à Python 3, les modules utilisant toujours Browser 1 à l’été 2017 seront simplement supprimés (car ils ne sont de toute façon probablement plus maintenus), à l’occasion de la sortie du futur Weboob 1.3.</p>
<p>Le passage total de Weboob et ses modules à Python 3 pourra ensuite se faire, prévu pour Noël 2017. Dès lors, plus aucune version de Python 2 ne sera prise en charge.</p>
<h3 id="améliorations-du-navigateur">Améliorations du navigateur</h3>
<p>Le projet ne le met pas toujours en avant, mais il est tout à fait possible d’utiliser Weboob comme une bibliothèque de <em>scraping</em>. En termes de fonctionnalités, le navigateur (<em>Browser</em>) n’a rien à envier à des projets qui pourraient venir spontanément en tête d’un développeur ou d’une développeuse souhaitant réaliser rapidement un script pour lire le contenu d’un site.</p>
<p>Les (le plus souvent mauvaises) expériences dans le <em>scraping</em> du projet permettent d’avoir des fonctionnalités déjà intégrées pour un nouveau développeur. Exemple parmi d’autres, mais qui a été rencontré durant le cycle de cette version, certains serveurs ont mis en place des protections <em>anti‐scraping</em> se basant sur l’ordre des paramètres de la requête <a href="https://git.weboob.org/weboob/devel/commit/e35319b20dc5fbb58abf332556f626927f454fe9">HTTP POST envoyée</a>.</p>
<h4 id="partialhtmlpage">PartialHTMLPage</h4>
<p>Certains sites retournent des réponses HTML partielles (au travers de requêtes <em>XMLHttpRequest</em>), à insérer au milieu de documents existants. Ces réponses peuvent contenir plusieurs balises racines, ce qui fait que la page retournée n’est pas du HTML.<br>
Le type de page <em>PartialHTMLPage</em> a été ajouté pour gérer ces réponses automatiquement.</p>
<h3 id="cachemixin">CacheMixin</h3>
<p>L’<a href="http://dev.weboob.org/api/browser/browsers#weboob.browser.browsers.APIBrowser"><em>APIBrowser</em></a> est une classe de <em>Browser</em> (introduite dans <a href="//linuxfr.org/news/weboob-une-version-1-1-pour-son-sixieme-anniversaire">Weboob 1.1</a>) dédiée aux API Web <a href="https://fr.wikipedia.org/wiki/JSON" title="Définition Wikipédia">JSON</a>, plutôt qu’aux pages HTML crados.</p>
<p>Une nouvelle classe <em>mixin</em> a été ajoutée, <em>CacheMixin</em>, qui possède un cache (optionnel) pour éviter de refaire les mêmes requêtes. On peut configurer l’<em>APIBrowser</em> pour retourner la réponse mise en cache dès que la même requête est faite, sans aucune transmission réseau, ou bien on peut le configurer pour laisser le site décider, grâce à l’utilisation des en‐têtes <code>ETag</code> et <code>If-Modified-Since</code>.<br>
Une fois qu’on a ajouté le <em>mixin</em> à l’héritage, pour l’utiliser, il suffit de remplacer les appels à <em>open</em> par <em>open_with_cache</em>.</p>
<h3 id="débogage-simplifié">Débogage simplifié</h3>
<p>Si les applications Weboob fournissent déjà des options permettant le débogage fin pour un utilisateur ou un développeur, il n’était pas toujours simple de déboguer en production des erreurs aléatoires sur des pages. Afin de simplifier la vie des développeurs et développeuses, il est désormais possible de configurer l’enregistrement des pages HTML lues par le navigateur dans la configuration d’un <em>back‐end</em>, il suffit d’ajouter l’attribut <code>_debug_dir</code>.</p>
<h3 id="encodeur-json">Encodeur JSON</h3>
<p>Un encodeur JSON a été ajouté (dans le module <code>weboob.tools.json</code>) pour pouvoir convertir les objets Weboob en JSON :</p>
<pre><code class="python"> <span class="n">json</span><span class="o">.</span><span class="n">dumps</span><span class="p">(</span><span class="n">objet_weboob</span><span class="p">,</span> <span class="n">cls</span><span class="o">=</span><span class="n">weboob</span><span class="o">.</span><span class="n">tools</span><span class="o">.</span><span class="n">json</span><span class="o">.</span><span class="n">WeboobEncoder</span><span class="p">)</span></code></pre>
<p>Il permet de simplifier la vie des développeurs souhaitant exporter les résultats obtenus par Weboob (notamment pour l’exposer sur des applications Web).</p>
<h2 id="petites-nouvelles">Petites nouvelles</h2>
<p>À l’occasion de la rédaction d’un article tutoriel pour <em>GNU/Linux Magazine France</em> (date de parution encore inconnue), le site <a href="https://www.linuxjobs.fr/"><em>Linuxjobs</em></a> a gagné son module Weboob. Il rejoint d’autres sites de recherche d’emploi, comme <em>Apec</em>, <em>Lolix</em>, <em>Monster</em>, <em>Pôle Emploi</em>…</p>
<p>Si vous voulez en savoir plus sur le projet et que vous vous rendez au <a href="https://fosdem.org/2017/schedule/event/python_weboob/">FOSDEM 2017</a>, sachez qu’une conférence aura lieu sur Weboob le <a href="https://www.python-fosdem.org/talks/script-the-web-with-weboob/">dimanche à midi en salle UD2.120 (<em>Chavanne</em>)</a>.</p>
<p>Enfin, dans la catégorie des utilisations externes de Weboob, nous vous avons souvent parlé dans les dépêches de <a href="https://kmymoney.org/">KMyMoney</a>. Le greffon Weboob (écrit par les développeurs de Weboob) est désormais officiel et intégré dans la <a href="https://kmymoney.org/news.php#itemKMyMoney480released">dernière version</a>.</p>
<h2 id="contributeurs">Contributeurs</h2>
<p>Merci aux contributeurs qui ont participé à cette version :</p>
<ul>
<li>Adrien Clerc ;</li>
<li>Baptiste Delpey ;</li>
<li>Benjamin Bouvier ;</li>
<li>Benjamin Carton ;</li>
<li>Bernard <em>Guyzmo</em> Pratz ;</li>
<li>Cédric Félizard ;</li>
<li>Christophe Lampin ;</li>
<li>Edouard Lambert ;</li>
<li>Edouard Lefebvre du Prey ;</li>
<li>Florent Fourcot ;</li>
<li>François Revol ;</li>
<li>James Galt ;</li>
<li>Jean Walrave ;</li>
<li>Johann Broudin ;</li>
<li>Jonathan Schmidt ;</li>
<li>Julien Danjou ;</li>
<li>Julien Veyssier ;</li>
<li>Laurent Bachelier ;</li>
<li>Matthieu Weber ;</li>
<li>Neil Armstrong ;</li>
<li>Oleg Plakhotniuk ;</li>
<li>
<em>Phyks</em> (Lucas Verney) ;</li>
<li>Roger Philibert ;</li>
<li>Roland Mas ;</li>
<li>Romain Bignon ;</li>
<li>Simon Lipp ;</li>
<li>Vincent Ardisson ;</li>
<li>Vincent Paredes ;</li>
<li>
<em>ZeHiro</em>.</li>
</ul><p><a href="http://weboob.org">Weboob</a> est un projet qui vit grâce à ses <a href="http://weboob.org/#authors">contributeurs</a>. Si vous souhaitez l’améliorer et que vous connaissez le Python (ou pas, des besoins sur la documentation et la qualité des icônes se font sentir), n’hésitez pas à <a href="http://dev.weboob.org/guides/contribute">contribuer</a>.</p></div><div><a href="https://linuxfr.org/news/weboob-s-offre-une-nouvelle-version-pour-feter-la-nouvelle-annee.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/111018/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/news/weboob-s-offre-une-nouvelle-version-pour-feter-la-nouvelle-annee#comments">ouvrir dans le navigateur</a>
</p>
Florent FourcotDavy Defaudpalm123Nils RatusznikZeroHeureBenoît Sibaudhttps://linuxfr.org/nodes/111018/comments.atomtag:linuxfr.org,2005:News/370952016-02-14T17:00:54+01:002016-02-16T13:43:00+01:00Weboob : une version 1.1 pour son sixième anniversaireLicence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<div><p><a href="http://weboob.org/">Weboob</a> (<em>Web Outside Of Browsers</em>) est une bibliothèque et un ensemble d'applications interagissant avec des sites web.</p>
<p>Plus d'un an après la sortie de la <a href="//linuxfr.org/news/weboob-atteint-la-maturite">première version stable de weboob</a>, nous sommes heureux de vous annoncer la sortie de weboob 1.1.</p>
<p>Pour rappel, weboob est une bibliothèque permettant d’accéder à près de <a href="http://weboob.org/modules">200 sites web</a> en ligne de commande ou avec des applications graphiques spécialisées.</p>
<p>Débuté par un simple script permettant d'automatiser certaines actions sur un célèbre site de rencontre, c'est désormais une communauté conséquente (plus de 100 <a href="https://www.openhub.net/p/weboob/contributors/summary">contributeurs</a> depuis le début du projet), qui maintient quotidiennement l'ensemble des modules.</p>
<p>Depuis toutes ces années, weboob est devenu un hub interopérable permettant à de multiples applications de récupérer, croiser et présenter des données issus de sites tiers. Tant et si bien, qu'il est fort possible que vous ayez déjà utilisé weboob sans le savoir au travers des entreprises suivantes : <a href="https://www.cozycloud.cc/">Cozycloud</a>, <a href="https://www.budget-insight.com/">Budget Insight</a>, <a href="http://www.winancial.com/">Winancial</a>, ou d'autres projets libres : <a href="//linuxfr.org/news/skrooge-1-8-0-est-sorti">Skrooge</a>, <a href="http://kmymoney2.sourceforge.net/index-home.html">Kmymoney</a>, <a href="http://www.hauweele.net/%7Egawen/blog/?p=27">GTranslate</a>, <a href="https://github.com/guyou/videoob-search-provider">Gnome Shell</a>, un greffon pour <a href="http://kodi.tv/">XMBC/Kodi</a>, <a href="https://github.com/bnjbvr/kresus">Kresus</a>, <a href="https://github.com/hinance/hinance">hinance</a>.</p>
<p>La nouvelle version 1.1 est exceptionnelle pour le projet. Le cycle de développement a duré plus d'un an (contre une moyenne entre 3 et 4 mois habituellement), et cette version inclut donc plus de 1200 commits écrits par 35 contributeurs. S'il n'y a pas de fonctionnalité impressionnante à mettre en avant, les changements sont très nombreux et cette dépêche se propose d'en évoquer quelques-uns.</p></div><ul><li>lien nᵒ 1 : <a title="http://weboob.org/" hreflang="en" href="https://linuxfr.org/redirect/96401">Site Web</a></li><li>lien nᵒ 2 : <a title="http://weboob.org/news" hreflang="en" href="https://linuxfr.org/redirect/96402">Liste complète des changements</a></li><li>lien nᵒ 3 : <a title="http://planet.weboob.org/" hreflang="fr" href="https://linuxfr.org/redirect/96403">Planet Weboob</a></li><li>lien nᵒ 4 : <a title="http://dev.weboob.org/" hreflang="en" href="https://linuxfr.org/redirect/96404">Documentation développeur</a></li><li>lien nᵒ 5 : <a title="https://symlink.me/projects/weboob/wiki/Association" hreflang="fr" href="https://linuxfr.org/redirect/96405">Association Weboob</a></li></ul><div><h2 class="sommaire">Sommaire</h2>
<ul class="toc">
<li>
<a href="#nouveaut%C3%A9s-depuis-la-10">Nouveautés depuis la 1.0</a><ul>
<li><a href="#cap-sur-le-patrimoine">Cap sur le patrimoine</a></li>
<li><a href="#une-commande-weboob">Une commande « weboob »</a></li>
<li><a href="#shopoob">Shopoob</a></li>
</ul>
</li>
<li>
<a href="#du-c%C3%B4t%C3%A9-des-d%C3%A9veloppeurs">Du côté des développeurs</a><ul>
<li><a href="#asynchrone">Asynchrone</a></li>
<li><a href="#des-outils-pour-les-api">Des outils pour les API</a></li>
<li><a href="#persistance-des-sessions">Persistance des sessions</a></li>
</ul>
</li>
<li><a href="#futur">Futur</a></li>
<li><a href="#soir%C3%A9e-weboob">Soirée Weboob</a></li>
<li><a href="#contributeurs">Contributeurs</a></li>
</ul><h2 id="nouveautés-depuis-la-10">Nouveautés depuis la 1.0</h2>
<h3 id="cap-sur-le-patrimoine">Cap sur le patrimoine</h3>
<p>La récupération d'informations bancaires est une des premières fonctionnalités de weboob, et probablement la plus populaire en France. Il s'agit également de la <em>capability</em> la plus stable, de part les contributions importantes de <a href="https://www.budget-insight.com">Budget Insight</a> (qui représentent 58% des commits de cette version).</p>
<p>Si tous les modules permettent depuis longtemps la récupération des comptes simples (comptes courants, comptes sur livret), seuls quelques modules permettaient de récupérer des informations plus détaillés sur des comptes financiers plus complexes (comptes titres et PEA, assurance vie, etc.). Cette fonctionnalité est désormais présente sur plus d'une dizaine de modules, et cette diversification a permis également d'améliorer la qualité des outils l'utilisant (meilleur affichage dans l'application <a href="http://weboob.org/applications/boobank">boobank</a>, meilleure documentation des champs récupérés, etc).</p>
<p>Des modules permettant de gérer des cartes de crédits (surtout pour les USA, avec notamment les cartes Amazon Store et Victoria's Secret) ont également fait leur apparition. Ces modules ont conduit à l'ajout de nouveaux attributs pour les comptes, comme la date du prochain paiement pour la carte de crédit, le montant minimal de paiement et la limite de crédit.</p>
<p>Enfin, l'épargne salariale se retrouve renforcée dans weboob avec le module s2e qui permet d'accéder aux informations des sites Esalia, Capeasi, BNP Épargne entreprise et HSBC Épargne entreprise.</p>
<h3 id="une-commande-weboob">Une commande « weboob »</h3>
<p>La diversité des interactions possibles avec les sites web a conduit au développement de nombreuses applications (44 actuellement) dans le cadre de weboob. Leurs noms ne sont pas toujours simples à retenir, et il est courant pour un nouvel utilisateur d'installer Weboob puis de se demander quoi faire pour l'utiliser. </p>
<p>Dans le but d'améliorer cette première approche, une commande « weboob » permet à présent d'accéder facilement aux applications disponibles pour exploiter une <em>capability</em> (un ensemble de fonctionnalités communes, respectant une interface définie). Par exemple, <code>weboob bank</code> lancera boobank, et <code>weboob video</code> offrira le choix entre <code>qvideoob</code> et <code>videoob</code>. De plus, l'application permet de lister les <em>capabilities</em> disponibles.</p>
<h3 id="shopoob">Shopoob</h3>
<p>En parlant d'applications et de noms à retenir, une nouvelle application a été ajoutée : [shopoob], vous permettant de lister et extraire vos commandes de sites marchands. Vous pouvez ainsi accéder au site d'Amazon, d'<a href="https://www.groupon.com/occasion/ideel">ideel</a>, de MyHabit et de Victoria's Secret.</p>
<p><img src="//img.linuxfr.org/img/687474703a2f2f64756d702e6b69746f662e6e65742f73686f706f6f622e706e67/shopoob.png" alt="Exemple d'utilisation de shopoob avec Amazon" title="Source : http://dump.kitof.net/shopoob.png"></p>
<h2 id="du-côté-des-développeurs">Du côté des développeurs</h2>
<h3 id="asynchrone">Asynchrone</h3>
<p>Le support des requêtes asynchrones a été ajouté au <code>Browser</code>.</p>
<p>Concrètement, cela permet de faire des requêtes HTTP sans bloquer l'exécution, dans le but d'en faire plusieurs en parallèle. Pour cela, on utilise le module <code>concurrent.futures</code> rétroporté de Python 3. Le nombre de requêtes exécutées en parallèle peut être limité afin de ne pas surcharger le serveur distant.</p>
<p>Plusieurs modules utilisent déjà la fonctionnalité, notamment pour aller sur toutes les pages de détail d'une liste (ce qui est d'autant plus facilité par le filtre <code>AsyncLoad</code>). Le parcours en est devenu significativement plus rapide.</p>
<p>L'utilisation est très simple, au lieu de :</p>
<pre><code class="python"> <span class="n">page</span> <span class="o">=</span> <span class="n">browser</span><span class="o">.</span><span class="n">open</span><span class="p">(</span><span class="o">...</span><span class="p">)</span></code></pre>
<p>On peut faire :</p>
<pre><code class="python"> <span class="n">page_future</span> <span class="o">=</span> <span class="n">browser</span><span class="o">.</span><span class="n">async_open</span><span class="p">(</span><span class="o">...</span><span class="p">)</span>
<span class="n">page</span> <span class="o">=</span> <span class="n">page_future</span><span class="o">.</span><span class="n">result</span><span class="p">()</span></code></pre>
<p>Seul l'appel à <code>result()</code> est bloquant. Il est aussi possible de fournir un callback.</p>
<p>Quand on utilise les filtres, on peut faire :</p>
<pre><code class="python"> <span class="k">class</span> <span class="nc">iter_list</span><span class="p">(</span><span class="n">ListElement</span><span class="p">):</span>
<span class="k">class</span> <span class="nc">item</span><span class="p">(</span><span class="n">ItemElement</span><span class="p">):</span>
<span class="n">load_details</span> <span class="o">=</span> <span class="n">Link</span><span class="p">(</span><span class="o">...</span><span class="p">)</span> <span class="o">&</span> <span class="n">AsyncLoad</span> <span class="c"># URL de la sous-page à charger</span>
<span class="n">obj_truc</span> <span class="o">=</span> <span class="n">Async</span><span class="p">(</span><span class="s">'details'</span><span class="p">)</span> <span class="o">&</span> <span class="n">CleanText</span><span class="p">(</span><span class="s">'./p[@class="truc"]'</span><span class="p">)</span> <span class="c"># le filtre CleanText sera appliqué sur la sous-page récupérée</span></code></pre>
<h3 id="des-outils-pour-les-api">Des outils pour les API</h3>
<p>Avec l'avènement des frameworks JavaScript tels que backbone.js ou angular.js, de plus en plus de sites web sont construits sous une forme d'API renvoyant du JSON. De même, beaucoup disposent d'applications mobiles qui interagissent avec une API.</p>
<p>Même si ça constitue une avancée inconsciente en terme d'accès aux données, puisqu'elles sont récupérées sous forme structurée, cela n'enlève pas l'intérêt de weboob, qui est d'agréger les informations depuis plusieurs sources et de les renvoyer dans un modèle de données unifié.</p>
<p>De fait, une classe <a href="http://dev.weboob.org/api/browser/browsers#weboob.browser.browsers.APIBrowser">APIBrowser</a> a été rajoutée, ainsi que des filtres permettant de parser le JSON de façon similaire aux filtres CSS ou XPath.</p>
<h3 id="persistance-des-sessions">Persistance des sessions</h3>
<p>Les modules peuvent désormais sauvegarder leur état (page courante, cookies, ou plus si le module décide d'étendre le mécanisme) afin d'éviter de repasser par l'étape de connexion à chaque lancement. La fonctionnalité est encore à un stade expérimental, les modules devant être vérifiés auparavant.</p>
<p>L'intérêt initial était de permettre au module Boursorama de conserver le cookie validant <a href="https://fr.wikipedia.org/wiki/Authentification_forte">l'authentification à deux facteurs</a> (par confirmation SMS) imposée lors d'une connexion depuis un nouveau lieu.</p>
<h2 id="futur">Futur</h2>
<p>La version 1.1 est la dernière à supporter Python 2.6. En effet, cette version est de plus en plus rare et est rarement testée. Cela permettra aussi d'améliorer la compatibilité avec Python 3.</p>
<p>La prochaine version 1.2 devrait sortir dans deux ou trois mois, de beaux changements sont déjà intégrés dans la branche de développement, notamment le portage à Qt5 de toutes les applications graphiques.</p>
<h2 id="soirée-weboob">Soirée Weboob</h2>
<p>Cela fait maintenant six ans que Weboob existe, et nous organisons comme il se doit une soirée pour réunir les membres de la communauté. Elle aura lieu lundi 15 février 2016 au <a href="https://www.openstreetmap.org/?mlat=48.86163&mlon=2.34926#map=19/48.86163/2.34926">Hall's Beer Tavern</a>, à Paris. Plus d'informations sur <a href="http://www.agendadulibre.org/events/10725">l'agenda du libre</a>.</p>
<p><img src="//img.linuxfr.org/img/687474703a2f2f70656f706c652e73796d6c696e6b2e6d652f7e726f6d312f70726f6a656374732f7765626f6f622f666976655f79656172735f6d696e692e706e67/five_years_mini.png" alt="Gâteau des cinq ans de weboob" title="Source : http://people.symlink.me/~rom1/projects/weboob/five_years_mini.png"></p>
<h2 id="contributeurs">Contributeurs</h2>
<p>Merci aux <a href="https://www.openhub.net/p/weboob/contributors/summary">contributeurs</a> qui ont participé à cette version :</p>
<ul>
<li>Alexandre Morignot</li>
<li>Baptiste Delpey</li>
<li>Benjamin Bouvier</li>
<li>Benjamin Carton</li>
<li>Caram Dache</li>
<li>Cédric Félizard</li>
<li>Christophe Lampin</li>
<li>Florent Fourcot</li>
<li>Grant Tzabro</li>
<li>Guilhem Bonnefille</li>
<li>James Galt</li>
<li>Jean-Philippe Dutreve</li>
<li>Johann Broudin</li>
<li>juliaL03</li>
<li>Julien Veyssier</li>
<li>Laurent Bachelier</li>
<li>Loic Bontonou</li>
<li>Lucas Nussbaum</li>
<li>Matthieu Weber</li>
<li>Mickaël Thomas</li>
<li>Mr Tchuss</li>
<li>nojhan</li>
<li>Oleg Plakhotniuk</li>
<li>P4ncake</li>
<li>Pierre-Louis Bonicoli</li>
<li>Pierre Mazière</li>
<li>Raphaël Rigo</li>
<li>Roger Philibert</li>
<li>Romain Bignon</li>
<li>RouxRC</li>
<li>Samuel Loury</li>
<li>Simon Muraïl</li>
<li>Vincent A</li>
<li>Vincent Paredes</li>
<li>Vincent Texier</li>
</ul><p><a href="http://weboob.org">Weboob</a> est un projet qui grossit et qui vit grâce à ses contributeurs. Si vous souhaitez l’améliorer, que vous connaissiez le Python ou pas, n’hésitez pas à <a href="http://dev.weboob.org/guides/contribute">contribuer</a>.</p></div><div><a href="https://linuxfr.org/news/weboob-une-version-1-1-pour-son-sixieme-anniversaire.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/108182/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/news/weboob-une-version-1-1-pour-son-sixieme-anniversaire#comments">ouvrir dans le navigateur</a>
</p>
Florent FourcotBenoît Sibaudpalm123https://linuxfr.org/nodes/108182/comments.atomtag:linuxfr.org,2005:News/358872014-11-14T06:46:39+01:002015-03-15T19:46:58+01:00Weboob atteint la maturitéLicence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<div><p><a href="http://weboob.org/">Weboob</a> (<em>Web Outside Of Browsers</em>) est une bibliothèque et un ensemble d'applications interagissant avec des sites web. Plus de quatre ans après le premier <em>commit</em>, nous avons le plaisir d'annoncer la sortie de la première version stable de Weboob !</p>
<p>En plus de présenter les nouveautés, cette dépêche profite de cette version pour faire un rapide retour sur l'historique et l'évolution du projet.</p></div><ul><li>lien nᵒ 1 : <a title="http://weboob.org/" hreflang="fr" href="https://linuxfr.org/redirect/92251">Site web</a></li><li>lien nᵒ 2 : <a title="http://weboob.org/news" hreflang="fr" href="https://linuxfr.org/redirect/92252">Liste complète des changements</a></li><li>lien nᵒ 3 : <a title="http://planet.weboob.org/" hreflang="fr" href="https://linuxfr.org/redirect/92256">Planet Weboob</a></li><li>lien nᵒ 4 : <a title="http://dev.weboob.org/" hreflang="fr" href="https://linuxfr.org/redirect/92257">Documentation développeur</a></li><li>lien nᵒ 5 : <a title="http://association.weboob.org/" hreflang="fr" href="https://linuxfr.org/redirect/92258">Association Weboob</a></li></ul><div><h2 class="sommaire">Sommaire</h2>
<ul class="toc">
<li><a href="#le-nouveau-browser">Le nouveau <em>browser</em></a></li>
<li><a href="#retour-sur-lorigine-du-projet">Retour sur l'origine du projet</a></li>
<li><a href="#37-capacit%C3%A9s">37 capacités</a></li>
<li><a href="#utilisations-tierces">Utilisations tierces</a></li>
<li><a href="#nouveaut%C3%A9s-depuis-la-0j">Nouveautés depuis la 0.j</a></li>
<li><a href="#communaut%C3%A9">Communauté</a></li>
</ul><h2 id="le-nouveau-browser">Le nouveau <em>browser</em>
</h2>
<p>Comme nous l'expliquions dans la <a href="//linuxfr.org/news/0-joie-une-nouvelle-version-de-weboob">dépêche précédente</a>, cette annonce de première version majeure est l'aboutissement de notre projet de refactorisation de code. Afin de rendre plus aisé le support de sites web par Weboob, le projet fournit de nombreux outils, dont une bibliothèque qui simule le fonctionnement d'un navigateur. Depuis quelques versions, cette bibliothèque a été réécrite sous le nom de "Browser2" puis tout simplement "le nouveau <em>browser</em>" (navigateur). Celui-ci est prêt à l'utilisation, et suffisamment abouti pour que son API reste stable durant la durée de vie de la branche 1.x. Nous nous autorisons des ajouts, mais l'existant ne sera pas modifié.</p>
<p>Ce nouveau <em>Browser</em> et les outils associés sont l'une des forces du projet : le <em>scraping</em> (extraction de contenu) est souvent une tâche répétitive, mais Weboob fait tout pour atténuer ce problème. Nous pensons que le projet a maintenant atteint un niveau de maturité lui permettant d'honorer cette promesse. Avec tous les outils du <em>browser</em> (ListElement, filtres, pagination, formulaires, etc.), un module peut ne prendre que quelques lignes de code.</p>
<h2 id="retour-sur-lorigine-du-projet">Retour sur l'origine du projet</h2>
<p>En 2008, un <a href="https://symlink.me/projects/aum/wiki">petit script Python</a> utilisant <a href="http://wwwsearch.sourceforge.net/mechanize/">mechanize</a> et <a href="https://github.com/html5lib/html5lib-python">html5lib</a> a vu le jour, écrit par un utilisateur d'un site de rencontres français bien connu, et dont l'objet était de remplacer l'interface web sur fond rose par son <a href="https://fr.wikipedia.org/wiki/Client_de_messagerie">MUA</a> pour échanger avec ses contacts. Très vite, il renouvela l'expérience avec un autre script pour récupérer automatiquement son solde et ses relevés depuis le site de sa banque.</p>
<p>Lorsque, début 2010, il lança le projet <em>dlfp2mail</em>, il se rendit compte de la possibilité d'appliquer la méthode à bon nombre d'autres sites web, et chercha à factoriser le code au sein d'un même et unique projet. Weboob était né.</p>
<p>Ainsi que ceux qui jasent sur le nom l'ignorent, il était initialement prévu de l'appeler <em>woob</em>. Ce n'est que lorsqu'on <a href="http://people.symlink.me/%7Erom1/projects/weboob/weboob.txt">constata qu'il existait déjà un autre logiciel portait déjà ce nom</a> qu'il fut décidé de le renommer <em>weboob</em>.</p>
<p>Les concepts fondateurs furent rapidement posés :</p>
<ul>
<li>séparation entre les modules interagissant avec les sites et les applications ;</li>
<li>système de <em>capacités</em> que chaque module peut implémenter ;</li>
<li>bibliothèque utilisable par des applications tierces.</li>
</ul><p>Le projet s'est depuis enrichi d'un <a href="//linuxfr.org/users/moules/journaux/browser-2-teaser">navigateur puissant</a> (remplaçant <em>mechanize</em> par <em>requests</em>) pour le parcours et l'analyse lexicale des pages, d'un <a href="//linuxfr.org/users/moules/journaux/r%C3%A9volution-dans-la-gestion-des-modules-weboob">système de dépôts</a> pour les modules, de classes <em>helper</em> pour résoudre les claviers virtuels, etc.</p>
<h2 id="37-capacités">37 capacités</h2>
<p>Les capacités sont des interfaces permettant aux applications d'interagir avec les sites Web, de façon unifiée. Par exemple, la capacité bancaire offre la possibilité de lister les comptes, obtenir l'historique des transactions, faire des virements, etc. De leur côté, les modules implémentent une ou plusieurs de ces capacités (parfois partiellement uniquement, notamment si le site n'a pas la fonctionnalité). Les applications ont donc des interfaces unifiées et stables pour interagir avec tous les sites d'une catégorie, et non pas avec un seul site bien particulier.</p>
<p>C'est une grande différence avec les nombreux scripts d'extraction de contenu individuels pouvant se trouver sur Internet : on accède à tous les sites permettant de télécharger des vidéos d'une manière unique, à tous les sites bancaires en une seule requête, etc. La diversité des fonctionnalités des sites Web se retrouve en partie chez Weboob : nous proposons actuellement 37 capacités différentes, à comparer avec les 172 sites dont Weboob permet l'accès.</p>
<h2 id="utilisations-tierces">Utilisations tierces</h2>
<p>Le projet Weboob fournit des <a href="http://weboob.org/applications/">applications basiques</a> pour interagir avec les sites. Ces applications permettent d'effectuer des requêtes complexes (avec notamment un système de filtres sur les résultats), et permettent déjà de nombreuses interactions. Notre objectif n'est cependant pas de remplacer les applications existantes : nous n'allons pas créer un nouveau gestionnaire financier personnel dans Weboob. De très bons logiciels libres existent déjà pour celà. De même pour les lecteurs vidéos.</p>
<p>Nous mettons donc l'accent sur l'export des données en formats utilisables par tous, ainsi que sur l'utilisation de Weboob en tant que bibliothèque dans les projets. Cette méthode a particulièrement bien fonctionné pour les applications bancaires, mais aussi pour des usages plus inattendus. On peut citer à la fois des entreprises (<a href="https://www.cozycloud.cc/">Cozycloud</a>, <a href="https://www.budget-insight.com/">Budget Insight</a>, <a href="http://www.winancial.com/">Winancial</a>) que des projets communautaires : <a href="//linuxfr.org/news/skrooge-1-8-0-est-sorti">Skrooge</a>, <a href="http://kmymoney2.sourceforge.net/index-home.html">Kmymoney</a> (nous essayons de faire intégrer un <a href="https://git.reviewboard.kde.org/r/120339/">patch upstream</a>), <a href="http://www.hauweele.net/%7Egawen/blog/?p=27">GTranslate</a>, <a href="https://github.com/guyou/videoob-search-provider">Gnome Shell</a>, un plugin pour <a href="http://kodi.tv/">XMBC/Kodi</a>…</p>
<h2 id="nouveautés-depuis-la-0j">Nouveautés depuis la 0.j</h2>
<p>Pour revenir sur les actualités de la 1.0, le temps de développement de cette version a été assez court. Notre objectif (<a href="https://packages.qa.debian.org/w/weboob.html">réussi</a>) étant une migration de la version 1.0 dans Debian testing avant le gel. Il n'y a donc eu que six (intensives) semaines entre la 0.j et la version 1.0.</p>
<p>On peut cependant noter que la capacité permettant de consulter des annonces immobilières (CapHousing) a été améliorée. Les annonces immobilières du site <a href="http://leboncoin.fr">Leboncoin</a> ont notamment été ajoutées.</p>
<p>Du côté des applications, une nouvelle option de filtre (<em>LIMIT</em>) est disponible en ligne de commande. Elle permet de limiter la profondeur des recherches des requêtes utilisant le moteur de condition.</p>
<p>Concernant les modules, on peut noter un second module pour une banque américaine (<a href="https://online.citibank.com">Citibank</a>). Du côté plus francophone, des modules pour suivre <a href="http://www.agendadulibre.org/">l'agenda du libre</a>, pour <a href="http://maree.info/">suivre les marées</a> et une <a href="http://goplayme.com/">nouvelle application de rencontres</a>. </p>
<p>Enfin, sous le capot, nous avons profondément changé les API et les noms internes des objets. Nous voulions le faire pour présenter une interface cohérente pour la version 1.0. Dans ce cadre, l'utilisation de l'ancien <em>Browser</em> est désormais signalée comme obsolète. Un nouveau niveau de debug fait son apparition pour le nouveau <em>Browser</em>, permettant un suivi fin des appels sur les filtres.</p>
<h2 id="communauté">Communauté</h2>
<p>Depuis quatre ans, ce sont pas moins de 88 <a href="https://www.openhub.net/p/weboob/contributors/summary">contributeurs</a> qui ont participé à Weboob :</p>
<p>Adrien Kunysz, Ahmed Boussadia, Alexandre Bonhomme, Alexandre Flament, Alexandre Franke, Alexandre Lissy, Antoine, Arno Renevier, Benjamin Carton, Benjamin Drieu, BohwaZ, Camille Baldock, Camille Dehecq, Cedric Defortis, Christophe Benz, Christophe Gouiran, Christophe Lampin, Clément Schreiner, Clément Calmels, Damien Cassou, David Jeanneteau, Erwan Jahier, Etienne Carriere, Fabien Grumelard, Florent Fourcot, François D., François Revol, Gabriel Serme, Gabriel Kerneis, Gilles Quenot, Grmbl Frechneu, Hervé Werner, Jean-Benoist Leger, Jean-Christophe Dubacq, Jean-Philippe Dutrève, Jerem, Jeremy Monnet, Jérôme Poisson, Jocelyn Jaubert, Johann Broudin, John Morrow, Julia Leven, Julien Hebert, Julien Veyssier, Juliette Stehlé, Kevin Pouget, Laurent Bachelier, Laurent Dufréchou, Laurent George, Loic Bontonou, Luc Didry, Lucas Nussbaum, Lucien Loiseau, Mathieu Jourdan, Mathieu Lordon, Matthieu Rakotojaona, Michael Scherer, Nicolas Duhamel, Noé Rubinstein, Oleg Plakhotniuk, Olivier, Olivier Schwander, Philippe Fremy, Pierre Mazière, Raphaël Rigo, Richard Genoud, Roger Philibert, Romain Bignon, Romain Garbage, Ryan Nowakowski, Samuel Loury, Sébastien Monel, Simon Murail, Stefano Zacchiroli, Tanguy Ortolo, Tens San, Thomas Lecavelier, Vicnet, Vincent A, Vincent Paredes, Vincent Texier, Willy Villard, Xavier Guerrin, Yann Rouillard, ianux, leto, theocrite</p>
<p>Nous remercions également pour cette version les étudiants de l'Université de Lille 1, qui ont ajouté des tests dans le cadre d'un projet d'étude.</p>
<p><a href="http://weboob.org">Weboob</a> est un projet qui grossit et qui vit grâce à ses contributeurs. Si vous souhaitez l’améliorer, que vous connaissiez le Python ou pas, n’hésitez pas à <a href="http://dev.weboob.org/guides/contribute">contribuer</a>. </p></div><div><a href="https://linuxfr.org/news/weboob-atteint-la-maturite.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/103940/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/news/weboob-atteint-la-maturite#comments">ouvrir dans le navigateur</a>
</p>
Florent FourcotZeroHeureBenoît Sibaudpalm123https://linuxfr.org/nodes/103940/comments.atomtag:linuxfr.org,2005:News/356442014-09-04T14:37:32+02:002015-03-15T19:37:46+01:000.joie, une nouvelle version de WeboobLicence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<div><p><a href="http://weboob.org/">Weboob</a> (<em>Web Outside Of Browsers</em>) est un ensemble d'applications interagissant avec des sites web.</p>
<p>En ces temps de rentrée, une nouvelle version de Weboob arrive pour vous accompagner. <strong>Weboob 0.j</strong> enjoue le Web depuis hier.</p>
<p>Cette nouvelle version est assez calme, avec environ 300 commits provenant de 13 contributeurs. Elle inclut cependant de nombreuses corrections de bugs, et peut être vue comme la version bêta de la 1.0 à venir.</p>
<p>Les nouveautés sont détaillées en seconde partie de la dépêche. Weboob compte désormais 165 modules, gérant davantage de sites (certains modules pouvant concerner plusieurs sites Web).</p></div><ul><li>lien nᵒ 1 : <a title="http://weboob.org/" hreflang="en" href="https://linuxfr.org/redirect/91391">Site web</a></li><li>lien nᵒ 2 : <a title="http://weboob.org/news" hreflang="en" href="https://linuxfr.org/redirect/91392">Liste complète des changements</a></li><li>lien nᵒ 3 : <a title="http://weboob.org/install" hreflang="en" href="https://linuxfr.org/redirect/91393">Installation</a></li><li>lien nᵒ 4 : <a title="http://weboob.org/modules" hreflang="en" href="https://linuxfr.org/redirect/91394">Modules</a></li><li>lien nᵒ 5 : <a title="http://weboob.org/applications/" hreflang="en" href="https://linuxfr.org/redirect/91395">Applications</a></li><li>lien nᵒ 6 : <a title="http://planet.weboob.org/" hreflang="fr" href="https://linuxfr.org/redirect/91396">Planet Weboob</a></li><li>lien nᵒ 7 : <a title="http://dev.weboob.org/" hreflang="en" href="https://linuxfr.org/redirect/91397">Documentation développeur</a></li><li>lien nᵒ 8 : <a title="http://association.weboob.org/" hreflang="fr" href="https://linuxfr.org/redirect/91398">Association Weboob</a></li></ul><div><h2 class="sommaire">Sommaire</h2>
<ul class="toc">
<li><a href="#export-%C3%A0-linternational-avec-wells-fargo-et-twitter">Export à l'international avec Wells Fargo et Twitter</a></li>
<li><a href="#plugin-xbmckodi">Plugin XBMC/Kodi</a></li>
<li><a href="#browser2-et-les-op%C3%A9rateurs-binaires">Browser2 et les opérateurs binaires</a></li>
<li><a href="#en-route-vers-la-10">En route vers la 1.0</a></li>
<li><a href="#la-documentation-d%C3%A9veloppeur-fait-peau-neuve">La documentation développeur fait peau neuve</a></li>
<li><a href="#petites-nouvelles">Petites nouvelles</a></li>
<li><a href="#contributeurs">Contributeurs</a></li>
</ul><h2 id="export-à-linternational-avec-wells-fargo-et-twitter">Export à l'international avec Wells Fargo et Twitter</h2>
<p>Les fondateurs et la grande majorité des développeurs du projet sont francophones, ce qui introduit un biais sur la sélection des modules. Ainsi, tous les sites bancaires étaient jusqu'à présent des sites de banques françaises. On avait été parfois approché par des développeurs pour des banques à l'étranger, mais sans que cela n'aboutisse à des contributions concrètes. C'est désormais fait ! Cette version inclut en effet le module pour la banque <a href="https://www.wellsfargo.com/">Wells Fargo</a>.</p>
<p>Dans la même veine, même si il a été développé par un francophone, un module <a href="http://twitter.com/">Twitter</a> a fait son apparition, amenant définitivement Weboob à la pointe des technologies de communication modernes.</p>
<h2 id="plugin-xbmckodi">Plugin XBMC/Kodi</h2>
<p>L'intégration de Weboob dans des applications spécialisées est toujours un objectif. Cela permet une bien meilleure expérience utilisateur, et nous permet de rester concentrés sur les sites web plutôt que de développer des applications compliquées.<br>
Nous sommes donc très heureux de présenter un plugin pour le lecteur XBMC/Kodi. Il permet de rechercher et visionner des vidéos en provenance de tous les sites gérés par <a href="http://weboob.org/applications/videoob">Videoob</a>:</p>
<p><img src="//img.linuxfr.org/img/687474703a2f2f6272696e6272696e2e6c696e7578642e6f72672f58424d432f78626d632d686f6d652e6a7067/xbmc-home.jpg" alt="Plugin xbmc" title="Source : http://brinbrin.linuxd.org/XBMC/xbmc-home.jpg"></p>
<p><img src="//img.linuxfr.org/img/687474703a2f2f6272696e6272696e2e6c696e7578642e6f72672f58424d432f78626d632d617274652d70726f6772616d732d4443412e6a7067/xbmc-arte-programs-DCA.jpg" alt="Plugin xbmc2" title="Source : http://brinbrin.linuxd.org/XBMC/xbmc-arte-programs-DCA.jpg"></p>
<p>Le plugiciel est disponible dans le dossier <em>contrib</em>.</p>
<h2 id="browser2-et-les-opérateurs-binaires">Browser2 et les opérateurs binaires</h2>
<p>Nous présentions lors de la <a href="//linuxfr.org/news/dites-0-i-a-weboob">dernière dépêche</a> le nouveau navigateur, permettant de simplifier l'extraction des données des sites Web. Cette simplification passe notamment par des filtres spécialisés, recherchant facilement les éléments du DOM, effectuant des traitements dessus et convertissant automatiquement les données au bon format (que ce soit un entier, une date, etc.). Ces filtres évitent d'écrire une conversion de texte en date dans chaque module. On peut imbriquer les filtres, afin d'obtenir un enchaînement assez puissant sans beaucoup de code : </p>
<pre><code class="python"> <span class="n">obj_duration</span> <span class="o">=</span> <span class="n">Duration</span><span class="p">(</span><span class="n">CleanText</span><span class="p">(</span><span class="s">'//div[@id="video_text"]'</span><span class="p">))</span></code></pre>
<p>Comme le code semble l'indiquer, on extrait d'abord le texte que l'on convertit ensuite en durée.</p>
<p>Cette encapsulation entre les différents filtres se fait parfois avec plusieurs niveaux, rendant le code un peu moins lisible. Pour résoudre cela, cette version introduit <a href="https://symlink.me/issues/1426">deux nouveautés</a> basées sur les opérateurs binaires. Le premier est le <em>&</em>, qui permet d'enchaîner deux filtres dans le sens naturel. On pourra ainsi réécrire la ligne par : </p>
<pre><code class="python"> <span class="n">obj_duration</span> <span class="o">=</span> <span class="n">CleanText</span><span class="p">(</span><span class="s">'//div[@id="video_text"]'</span><span class="p">)</span> <span class="o">&</span> <span class="n">Duration</span></code></pre>
<p>Le second, <em>|</em>, est utilisé pour définir une valeur par défaut, dans le cas où les filtres n'arrivent pas à convertir les données (notamment parce que la donnée n'est pas disponible sur le site lui-même ou qu'elle n'a pas le format attendu). Petit exemple de code réel :</p>
<pre><code class="python"> <span class="n">obj_duration</span> <span class="o">=</span> <span class="n">CSS</span><span class="p">(</span><span class="s">'span.thumbtime span'</span><span class="p">)</span> <span class="o">&</span> <span class="n">CleanText</span> <span class="o">&</span> <span class="n">Duration</span> <span class="o">|</span> <span class="n">NotAvailable</span></code></pre>
<p>Ces opérateurs, optionnels, augmentent la palette des outils à disposition des développeurs de modules, rendant l'écriture de ceux-ci beaucoup plus aisée.</p>
<p>Pour plus d'informations sur le nouveau navigateur et son système de filtres, vous pouvez retrouver une <a href="http://people.symlink.me/%7Erom1/blog/weboob/Browser2_%3A_Introduction.html?view=blog">série d'articles</a> publiée (en français) sur le <a href="http://planet.weboob.org">Planet Weboob</a>.</p>
<h2 id="en-route-vers-la-10">En route vers la 1.0</h2>
<p>Cette version sonne la dernière étape vers une stabilisation de Weboob et une sortie prochaine de la 1.0. Un travail d'uniformisation de l'API de développement a ainsi été effectué afin de pouvoir rentrer sereinement dans un cycle permettant la conservation de la rétro-compatibilité.</p>
<p>Cette uniformisation a cependant un coût temporaire : les outils externes utilisant Weboob comme bibliothèque doivent être mis à jour. Dans la même veine, le paquet Debian a été un peu nettoyé et rangé, et l'emplacement des plugins munin a notamment été modifié.</p>
<p>Nous sommes pour le moment dans les temps par rapport à notre <a href="https://symlink.me/versions/show/43">planning prévisionnel</a> pour la sortie de la version 1.0, prévue avant le gel de la distribution Debian.</p>
<h2 id="la-documentation-développeur-fait-peau-neuve">La documentation développeur fait peau neuve</h2>
<p>Un effort particulier a été réalisé durant ce cycle de développement pour améliorer la <a href="http://dev.weboob.org/">documentation</a>. Nous avons ainsi refait la page d'accueil du site pour développeur, actualisé les guides et réorganisé la structure. Ce qui était parfois divisé entre le Wiki et la documentation est désormais intégralement sur le site dédié. Accessoirement, nous avons changé l'adresse du site, en passant de <a href="http://docs.weboob.org">docs.weboob.org</a> à <a href="http://dev.weboob.org">dev.weboob.org</a>.</p>
<h2 id="petites-nouvelles">Petites nouvelles</h2>
<p>Les imports Python ont été réorganisés, pour réduire sensiblement le temps de chargement des applications simples (division par deux pour la plus simple des applications). <br>
À la manière de l'utilitaire <code>ip</code> il est possible, pour économiser quelques lettres lors de l'écriture des commandes, de réduire les noms des modules (arte peut ainsi être écrit <em>ar</em>, voir <em>a</em>). Cela s'ajoute au nom des commandes <a href="http://flo.fourcot.fr/index.php?post/2012/07/23/Raccourcir-les-commandes-sur-Weboob">déjà réduites</a>.</p>
<p>Enfin, deux autres modules font leur apparition. Ils permettent d'accéder aux sites <a href="http://feedly.com/">Feedly</a> et <a href="http://www.oney.fr/">Oney Banque</a></p>
<p>La prise en charge de Python 3 a été améliorée. Le projet reste en Python 2, mais certaines parties du core, et les modules compatibles, sont déjà utilisables avec Python 3.</p>
<p>L'application radioob gère maintenant les albums et les playlists :</p>
<pre><code>$ radioob -b grooveshark search album sixsixsixteen
album.8163226@grooveshark — Blood Duster (Blood Duster)
$ radioob -b grooveshark play album.8163226@grooveshark
</code></pre>
<p>Le module arte prend en charge les podcasts.</p>
<h2 id="contributeurs">Contributeurs</h2>
<p>Merci aux <a href="https://www.openhub.net/p/weboob/contributors/summary">contributeurs</a> qui ont participé à cette version :</p>
<ul>
<li>Benjamin Carton</li>
<li>Florent Fourcot</li>
<li>Jean-Philippe Dutreve</li>
<li>Julien Hebert</li>
<li>Laurent Bachelier</li>
<li>Oleg Plakhotniuk</li>
<li>Romain Bignon</li>
<li>Simon Murail</li>
<li>Tanguy Ortolo</li>
<li>Tens San</li>
<li>Vincent A</li>
<li>Vincent Paredes</li>
<li>Vincent Texier</li>
</ul><p><a href="http://weboob.org">Weboob</a> est un projet qui grossit et qui vit grâce à ses contributeurs. Si vous souhaitez l’améliorer, que vous connaissiez le Python ou pas, n’hésitez pas à <a href="http://dev.weboob.org/guides/contribute">contribuer</a>.</p></div><div><a href="https://linuxfr.org/news/0-joie-une-nouvelle-version-de-weboob.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/103193/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/news/0-joie-une-nouvelle-version-de-weboob#comments">ouvrir dans le navigateur</a>
</p>
F. Florentpalm123Benoît Sibaudhttps://linuxfr.org/nodes/103193/comments.atomtag:linuxfr.org,2005:News/353952014-05-22T13:43:09+02:002015-03-15T19:36:38+01:00Dites 0.i à WeboobLicence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<div><p><a href="http://weboob.org">Weboob</a> (<em>Web Outside Of Browsers</em>) est un ensemble d'applications interagissant avec des sites web.</p>
<p>Et pour profiter du printemps, voici une nouvelle version de Weboob ! <strong>Weboob 0.i</strong> a en effet été acceptée sur le Web lundi dernier.</p>
<p>Cette version bat de nouveaux records de changements, avec 628 <em>commits</em> provenant de 19 contributeurs. Elle apporte la révolution du projet Browser2 (nouveau navigateur pour simplifier l'extraction des données), ainsi que de nombreux nouveaux modules.</p>
<p>Les nouveautés sont détaillées en seconde partie de la dépêche. Weboob compte désormais 161 modules, gérant au total encore plus de sites (certains modules pouvant concerner plusieurs sites Web).</p></div><ul><li>lien nᵒ 1 : <a title="http://weboob.org" hreflang="fr" href="https://linuxfr.org/redirect/90572">Site web</a></li><li>lien nᵒ 2 : <a title="http://weboob.org/news" hreflang="en" href="https://linuxfr.org/redirect/90573">Liste complète des changements</a></li><li>lien nᵒ 3 : <a title="http://weboob.org/install" hreflang="en" href="https://linuxfr.org/redirect/90574">Installation</a></li><li>lien nᵒ 4 : <a title="http://weboob.org/modules" hreflang="en" href="https://linuxfr.org/redirect/90575">Modules</a></li><li>lien nᵒ 5 : <a title="http://weboob.org/applications/" hreflang="en" href="https://linuxfr.org/redirect/90576">Applications</a></li><li>lien nᵒ 6 : <a title="https://symlink.me/projects/weboob/wiki/Association" hreflang="fr" href="https://linuxfr.org/redirect/90577">Association Weboob</a></li></ul><div><h2 class="sommaire">Sommaire</h2>
<ul class="toc">
<li><a href="#browser2--un-nouveau-navigateur">Browser2 : un nouveau navigateur</a></li>
<li><a href="#listitem--factorisons-le-code">ListItem : factorisons le code</a></li>
<li><a href="#des-mots-de-passe-prot%C3%A9g%C3%A9s">Des mots de passe protégés</a></li>
<li><a href="#les-reprises-de-weboob">Les reprises de Weboob</a></li>
<li><a href="#les-petites-nouvelles">Les petites nouvelles</a></li>
<li><a href="#association">Association</a></li>
<li><a href="#contributeurs">Contributeurs</a></li>
</ul><h2 id="browser2--un-nouveau-navigateur">Browser2 : un nouveau navigateur</h2>
<p>Puisque le but est d'extraire des données sur le Web, le navigateur est une composante essentielle du projet. Il permet de simplifier les requêtes HTTP, de gérer les sessions, les cookies, de remplir les formulaires, etc.</p>
<p>Le premier navigateur développé (toujours en service) est basé sur la bibliothèque <a href="http://wwwsearch.sourceforge.net/mechanize/">mechanize</a>, avec toute une couche d'abstraction rajoutée par Weboob pour en simplifier l'utilisation. Nous étions cependant limités par cette bibliothèque : la <a href="http://people.symlink.me/%7Erom1/blog/weboob/Browser2_:_Les_formulaires.html">gestion des formulaires est affreuse</a>, le SSL ne vérifie pas les certificats, le debug des entêtes HTTP était compliqué, etc.</p>
<p>Un projet de nouveau navigateur était donc lancé depuis un certain temps, en se basant cette fois sur la bibliothèque <a href="http://docs.python-requests.org/en/latest/">python-requests</a>. Le projet a été retardé plusieurs fois, notamment du fait des nombreux changements d'API de la bibliothèque, empêchant de développer quelque chose de stable. Cette période de maturation de la bibliothèque semble terminée, et le travail a donc pu reprendre.</p>
<p>Cette bibliothèque tenant toutes ses promesses, le nouveau navigateur (Browser2) de Weboob est bien plus performant que le précédent. Nous avons pu partir de bases solides pour reconstruire un navigateur. Les formulaires sont ainsi très simples à remplir, les URL sont bien mieux gérées, les entêtes HTTP (envoyées et reçues) sont sauvegardées en mode Debug, et la gestion de la pagination est enfantine. Enfin, le SSL est pleinement fonctionnel.</p>
<h2 id="listitem--factorisons-le-code">ListItem : factorisons le code</h2>
<p>Ce n'est pas lié au changement de bibliothèque, mais cela vient également avec le projet Browser2. En examinant nos expériences de plusieurs années sur le <code>parsing</code> de pages, et le code des modules, il était évident pour nous que ce dernier était très (trop) répétitif. Nous voulions limiter la duplication du code, et simplifier l'écriture de module.</p>
<p>C'est cette réflexion qui a conduit à l'écriture des classes <code>ListElement</code> et <code>ItemElement</code>, permettant d'obtenir un code très déclaratif. L'extraction des données se base sur des <a href="http://docs.weboob.org/api/tools/browser2/filters.html">filtres</a>, dont la composition permet de presque tout faire. Les modules ont la possibilité de déclarer des filtres personnalisés, mais l'objectif est bien de les centraliser dans le cœur pour les réutiliser au maximum.</p>
<p>Il nous reste encore des choses que nous voulons améliorer pour le projet Browser2, mais nous le pensons déjà pleinement utilisable et 24 modules sont maintenant basés dessus. Nous sommes très satisfaits du résultat, notamment quand on observe que la conversion d'un module permet très souvent de diviser le nombre de lignes de code par deux. La documentation est prête, et nous sommes preneurs de tout retour concernant ce navigateur.</p>
<p>Pour plus d'informations sur ce sujet, le <a href="http://planet.weboob.org/">Planet du projet</a> contient de nombreux articles détaillés.</p>
<h2 id="des-mots-de-passe-protégés">Des mots de passe protégés</h2>
<p>La protection des mots de passe était souvent un sujet de discussion à l'intérieur et autour du projet. En effet, il n'existait que deux alternatives : stocker le mot de passe dans un fichier en clair, ou bien laisser le champ vide et taper le mot de passe à chaque utilisation.</p>
<p>Plutôt que de réinventer la roue avec un gestionnaire de mot de passe propre au projet, il est désormais possible de configurer un appel à une application externe pour obtenir les identifiants d'un compte. La syntaxe rappelle celle d'un script bash, avec l'utilisation des symboles ` pour délimiter la commande.</p>
<p>Un exemple d'utilisation est ainsi de remplacer dans le fichier de configuration <code>backends</code> une ligne :</p>
<pre><code>password = 123456
</code></pre>
<p>par :</p>
<pre><code>password = `pass banques/ing`
</code></pre>
<p>Les utilisateurs peuvent également utiliser l'outil de configuration <code>weboob-config</code> pour mettre à jour ce champ, et les nouveaux utilisateurs auront l'option d'utiliser cette méthode dès la configuration d'un module.</p>
<h2 id="les-reprises-de-weboob">Les reprises de Weboob</h2>
<p>Si Weboob fournit de (nombreuses) applications, elles n'ont pas vocation à remplacer les applications spécialisées (et bien plus efficaces) existantes. Dans l'idéal, les applications Weboob ne seraient utilisées que pour exporter vers un format standard, et les données traitées par des applications existantes.</p>
<p>C'est pourquoi nous sommes toujours heureux de voir des projets intégrant des appels directs à Weboob. C'est courant dans le monde des applications bancaires (<a href="http://budgea.com">Budgea</a> pour du propriétaire, <a href="https://www.cozycloud.cc">CozyCloud</a> et son gestionnaire financier, <a href="http://skrooge.org/">skrooge</a> pour importer les données bancaires ainsi que les factures, etc), mais moins pour les autres applications.</p>
<p>Nous profitons donc de cette dépêche pour parler d'un <a href="https://github.com/guyou/grilo-plugins/tree/weboob/src/weboob">plugin pour la recherche de vidéos pour Grilo</a>, et d'un <a href="https://github.com/guyou/videoob-search-provider">plugin pour la recherche dans Gnome Shell</a>. Plus d'informations sur <a href="http://nathguil.free.fr/nikola/">le blog de l'auteur</a>, avec notamment des vidéos de démonstrations.</p>
<h2 id="les-petites-nouvelles">Les petites nouvelles</h2>
<p>Dans les petites nouvelles, la conversion de Weboob vers Python 3 a commencé. Nous prévoyons de rendre progressivement compatible le cœur, les applications, et les modules basés sur Browser2.</p>
<p>Chaque version de Weboob s'accompagne toujours de nouveaux modules, celle-ci n'est pas en reste avec de nombreux modules permettant d'envoyer/recevoir des images. Un module pour le site <a href="www.lacentrale.fr">La Centrale</a> fait également son apparition, ainsi que pour le site de rencontre de plus en plus populaire <a href="http://www.gotinder.com/">Tinder</a>. Cela pourrait <a href="http://madame.lefigaro.fr/societe/ces-jeunes-qui-savent-plus-draguer-sans-tinder-170514-855000">sauver une génération</a>.</p>
<p>Enfin, on entend parfois sur ce site que le nom du projet est incompatible avec une utilisation professionnelle. La réalité prouve le contraire, avec une prochaine utilisation de Weboob par la Banque Accord (via l'entreprise <a href="https://www.budget-insight.com/">Budget Insight</a>). On peut même trouver des <a href="http://www.emploitic.com/offres/algerie/alger/developpeur-web-38554/">offres d'emploi mentionnant Weboob</a>.</p>
<h2 id="association">Association</h2>
<p>L'association Weboob continue son rôle de pilotage et protection du projet. Elle tiendra son assemblée générale le 12 Juin dans un lieu qui reste à définir. Si vous êtes intéressés, une annonce est à venir sur la liste de diffusion du projet, et le <a href="https://symlink.me/projects/weboob/wiki/Association">bas de la page de l'association</a> sera mis à jour.</p>
<h2 id="contributeurs">Contributeurs</h2>
<p>Merci aux contributeurs qui ont participé à cette version :</p>
<ul>
<li>Adrien Kunysz ;</li>
<li>Ahmed Boussadia ;</li>
<li>Benjamin Carton ;</li>
<li>Florent Fourcot ;</li>
<li>François Revol ;</li>
<li>Gabriel Kerneis ;</li>
<li>Johann Broudin ;</li>
<li>Laurent Bachelier ;</li>
<li>Matthieu Rakotojaona ;</li>
<li>Noé Rubinstein ;</li>
<li>Pierre Mazière ;</li>
<li>Raphaël Rigo ;</li>
<li>Roger Philibert ;</li>
<li>Romain Bignon ;</li>
<li>Vincent Osele ;</li>
<li>Vincent A. ;</li>
<li>Vincent Paredes ;</li>
<li>Vincent Texier ;</li>
<li>Yann Rouillard.</li>
</ul><p><a href="http://weboob.org">Weboob</a> est un projet qui vit grâce à ses contributeurs. Si vous souhaitez l’améliorer et que vous connaissez le Python, n’hésitez pas à <a href="https://symlink.me/projects/weboob/wiki/How_to_Contribute">contribuer</a>.</p></div><div><a href="https://linuxfr.org/news/dites-0-i-a-weboob.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/102261/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/news/dites-0-i-a-weboob#comments">ouvrir dans le navigateur</a>
</p>
F. Florentbubar🦥ZeroHeureBenoît SibaudNils Ratusznikhttps://linuxfr.org/nodes/102261/comments.atomtag:linuxfr.org,2005:News/350892014-02-18T18:35:22+01:002014-04-24T10:35:32+02:00Ampache Doped : Ampache part en fourchetteLicence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<div><p><a href="https://github.com/ampache/ampache/">Ampache</a> est un serveur de diffusion de musique, développé en PHP. Il indexe une ou plusieurs collections et met à disposition la musique via une interface Web, le tout avec de nombreuses fonctionnalités. L'une des plus pratiques est probablement le codage à la volée des fichiers dans une version dégradée, pour limiter la consommation de bande passante. Une API est également disponible pour des clients lourds sur de nombreuses architectures (notamment Viridian sous Linux, ou plusieurs greffons de logiciels populaires). C'est un vieux projet, qui doit avoir plus d'une dizaine d'années.</p>
<p>Des signes d'essoufflement étaient cependant visibles depuis quelques temps. Aucune nouvelle versions depuis un an. Une série de versions alpha (alpha1, alpha2, …, alpha6) qui s'arrête il y a neuf mois. La disparition du site Web du domaine officiel <a href="http://ampache.org">ampache.org</a> qui pointe désormais vers une page GitHub. Des bugs qui s'accumulent, et aucun message des mainteneurs. Dans le monde du logiciel libre, il n'en fallait pas moins pour qu'un <em>fork</em> se mette en place.</p>
<p><img src="//img.linuxfr.org/img/687474703a2f2f7069782e746f696c652d6c696272652e6f72672f75706c6f61642f6f726967696e616c2f313339383332383530302e6a7067/1398328500.jpg" alt="logo Ampache Doped" title="Source : http://pix.toile-libre.org/upload/original/1398328500.jpg"></p>
<p>Le nouveau projet s'appelle <a href="http://ampache-doped.github.io/">Ampache Doped</a>, et il connaît un développement relativement actif. Tout d'abord, la version 3.6 est enfin sortie. Ensuite, la version 3.7 semble bien sur les rails avec une <a href="https://github.com/ampache-doped/ampache/tree/develop">branche de développement active</a>. Pour autant, ils tentent de garder contact avec les développeurs officiels d'Ampache (certes avec une méthode "à prendre ou à laisser"). On peut notamment trouver ce <a href="https://github.com/ampache/ampache/issues/99">bug ouvert</a>, avec l'ensemble des modifications, et des questions sur l'avenir (sans réponse des développeurs).</p>
<p>En tant qu'utilisateur d'Ampache, je suis heureux de voir ce fork, et je souhaite bonne chance aux développeurs !</p>
<p><abbr title="Note des modérateurs">NdM</abbr> : <em>merci à F. Florent pour son journal.</em></p></div><ul><li>lien nᵒ 1 : <a title="http://linuxfr.org/users/ffourcot/journaux/ampache-part-en-fourchette" hreflang="fr" href="https://linuxfr.org/redirect/89463">Journal à l'origine de la dépêche</a></li><li>lien nᵒ 2 : <a title="http://ampache-doped.github.io/" hreflang="en" href="https://linuxfr.org/redirect/89464">Ampache Doped</a></li><li>lien nᵒ 3 : <a title="https://github.com/ampache-doped/ampache" hreflang="fr" href="https://linuxfr.org/redirect/89465">Github Ampache Doped</a></li></ul><div></div><div><a href="https://linuxfr.org/news/ampache-doped-ampache-part-en-fourchette.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/101290/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/news/ampache-doped-ampache-part-en-fourchette#comments">ouvrir dans le navigateur</a>
</p>
F. FlorentFlorent ZaraBAudpalm123https://linuxfr.org/nodes/101290/comments.atomtag:linuxfr.org,2005:News/349722014-01-15T11:25:25+01:002014-01-15T11:25:25+01:000.h un weboobLicence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<div><p><a href="http://weboob.org">Weboob</a> (<em>Web Outside Of Browsers</em>) est un ensemble d'applications interagissant avec des sites web.</p>
<p>Nouvelle année, nouvelle version de Weboob ! <strong>Weboob 0.h</strong> irradie le Web depuis jeudi dernier.</p>
<p>Cette version atteint le nombre explosif de 25 contributeurs, totalisant 442 commits. Elle apporte de très nombreux modules (permettant l'interaction avec de nouveaux sites Web), ainsi qu'une nouvelle application permettant de remplir votre calendrier d'évènements culturels. Le très demandé module voyages-sncf est également de la partie.</p>
<p>Pour une vision plus atomique des changements, les nouveautés sont détaillées en seconde partie de la dépêche. Malgré la disparition de deux modules, Weboob atteint désormais le nombre de 148 sites gérés !</p></div><ul><li>lien nᵒ 1 : <a title="http://weboob.org" hreflang="en" href="https://linuxfr.org/redirect/89050">Site web</a></li><li>lien nᵒ 2 : <a title="http://weboob.org/news" hreflang="en" href="https://linuxfr.org/redirect/89051">Liste complète des changements</a></li><li>lien nᵒ 3 : <a title="http://weboob.org/install" hreflang="en" href="https://linuxfr.org/redirect/89052">Installation</a></li><li>lien nᵒ 4 : <a title="http://weboob.org/modules" hreflang="en" href="https://linuxfr.org/redirect/89053">Modules</a></li><li>lien nᵒ 5 : <a title="http://weboob.org/applications/" hreflang="en" href="https://linuxfr.org/redirect/89054">Applications</a></li><li>lien nᵒ 6 : <a title="http://planet.weboob.org" hreflang="fr" href="https://linuxfr.org/redirect/89055">Planet Weboob</a></li><li>lien nᵒ 7 : <a title="https://symlink.me/projects/weboob/wiki/Association" hreflang="fr" href="https://linuxfr.org/redirect/89056">Association Weboob</a></li></ul><div><h2 class="sommaire">Sommaire</h2>
<ul class="toc">
<li><a href="#boobcoming">Boobcoming</a></li>
<li><a href="#transports">Transports</a></li>
<li><a href="#plus-proche-des-noyaux">Plus proche des noyaux</a></li>
<li><a href="#petites-nouvelles">Petites nouvelles</a></li>
<li><a href="#communication">Communication</a></li>
<li><a href="#contributeurs">Contributeurs</a></li>
</ul><h2 id="boobcoming">Boobcoming</h2>
<p><a href="http://weboob.org/applications/boobcoming">boobcoming</a> est une application dédiée à la recherche et l'export d'évènements (qui peuvent être culturels ou d'une autre nature). La recherche simple permet de trouver des évènements sur des dates précises, une recherche complexe permet d'affiner les résultats si nécessaires.</p>
<p>L'utilisateur peut ensuite exporter les évènements qu'il souhaite en format CalDav, pour l'intégrer dans ses applications habituelles de calendrier. Déjà quatre modules sont disponibles.</p>
<p><img src="//img.linuxfr.org/img/687474703a2f2f666f7572636f742e66722f74656d702f7765626f6f622f626f6f62636f6d696e672e706e67/boobcoming.png" alt="Capture d'écran de boobcoming" title="Source : http://fourcot.fr/temp/weboob/boobcoming.png"></p>
<h2 id="transports">Transports</h2>
<p>Du côté des transports, l'un des site favoris du public de DLFP est désormais géré : <a href="http://voyages-sncf.com">voyages-sncf</a>. Le module permet des recherches d'itinéraires, prend en compte les cartes de réductions, etc. Pour profiter de ce module, il faut utiliser l'application <a href="http://weboob.org/applications/traveloob">traveloob</a>, qui a bénéficié au passage d'un léger lifting.</p>
<p><img src="//img.linuxfr.org/img/687474703a2f2f666f7572636f742e66722f74656d702f7765626f6f622f74726176656c6f6f622e706e67/traveloob.png" alt="voyages-sncf" title="Source : http://fourcot.fr/temp/weboob/traveloob.png"></p>
<p>Avec la même application, les habitants du centre de la France peuvent utiliser le module <a href="http://jvmalin.fr">jvmalin</a> pour les calculs d'itinéraires et horaires.</p>
<p>Toujours pour le transport, les modules permettant de récupérer les données de capteurs ont désormais une application dédiée. Parmi ces modules, on trouve notamment jcvelaux (permettant d'accéder à tous les systèmes de vélo en libre service de JCDecaux) et vlille. Cela fait beaucoup de villes, et pas seulement en France. Ces modules étaient demandés depuis très longtemps dans le redmine du projet.</p>
<p><img src="//img.linuxfr.org/img/687474703a2f2f666f7572636f742e66722f74656d702f7765626f6f622f626f6f6273697a652e706e67/boobsize.png" alt="Capture d'écran de boobsize" title="Source : http://fourcot.fr/temp/weboob/boobsize.png"></p>
<h2 id="plus-proche-des-noyaux">Plus proche des noyaux</h2>
<p>Pour les développeurs d'applications externes, l'utilisation de Weboob en tant que bibliothèque est facilitée par l'introduction d'une nouvelle classe Webnip (Web (in) Non Interactive Programs). Cela évite notamment d'importer toute la gestion des dépôts de modules habituellement présente dans Weboob. La classe Weboob est toujours présente pour ceux qui souhaitent en bénéficier.</p>
<p>Pour les utilisateurs, le moteur de conditions a été complètement réécrit. Ce moteur concerne toutes les applications en console, et permet de mettre des conditions très fines sur les résultats à obtenir. En plus des conditions sur des champs numériques (solde supérieur à 1000€ sur un compte, transactions qui dépassent un certain montant, etc), un nouvel opérateur '|' a été ajouté pour "greper" les champs textuels. Il est également désormais possible de mettre des conditions sur des dates (jour précis, avant une date, après une date).<br>
Les conditions peuvent être combinées grâce aux opérateurs AND et OR, permettant des expressions logiques très complexes. Toutes ces informations sont documentées dans le man de chaque application.</p>
<h2 id="petites-nouvelles">Petites nouvelles</h2>
<p>La gestion des modules multimédias a été revue en interne de Weboob. Pour l'utilisateur, cela permet une séparation plus claire entre ce qui ne gère que du son (en utilisant l'application <a href="http://weboob.org/applications/radioob">radioob</a>) et ce qui est vidéo (via l'application <a href="http://weboob.org/applications/videoob">videoob</a>. Pour le son, de nombreuses radios apparaissent avec les modules Audioaddict, Nectarine et Nihon no Oto. En lecture par morceau, le module Grooveshark permet l'accès à de très nombreux groupes.</p>
<p>Autrement, nous perdons deux modules dans cette nouvelle version. Le site ecrans.fr n'a en effet plus de flux RSS et de site spécifique, et son module disparaît donc. Il peut être cependant remplacé par le nouveau module liberation, en le configurant pour ne prendre que les nouvelles ecrans. Autre site disparu : isohunt.</p>
<p>Cette version est remarquable par son nombre de nouveaux modules. Pour les amateurs de factures, on trouve notamment le module EDF et le module Poivy. Pour la recherche d'emploi, quatre nouveaux modules apparaissent. Le module GitHub permet quand à lui de suivre les bugs de projets. Comme toujours, quelques nouveaux modules bancaires avec Apivie (assurances vie) et Banqueaccord.</p>
<p>Autre nouveauté de cette version, un installateur Windows <a href="https://symlink.me/projects/weboob/files">officiellement distribué</a>. Bien que testés avec succès sur plusieurs ordinateurs, il peut encore contenir des bugs. Le fonctionnement complet de Weboob n'est pas non plus assuré sur cette plateforme, car aucun développeur ne l'utilise en système principal.</p>
<h2 id="communication">Communication</h2>
<p>Nous n'avons rien fait pour, mais Weboob était <a href="http://www.unixgarden.com/wp-content/uploads/2013/08/lp79couv.jpg">en une</a> du Linux Pratique de septembre/octobre. Si nous aurions probablement pu aider/compléter les informations de l'auteur, l'article est assez fidèle et est probablement à ce jour la meilleure documentation dans la catégorie « Weboob, premiers pas ».</p>
<p>Nous avons également indirectement bénéficié de la <a href="http://www.wired.com/wiredenterprise/2013/12/open-bank-manager/">couverture médiatique</a> du Personnal Financial Manager intégré à CozyCloud. À l'intérieur, c'est du vrai Weboob qui tourne (et CozyCloud semble permettre d'appeler Weboob via une API Web).</p>
<h2 id="contributeurs">Contributeurs</h2>
<p>Merci aux contributeurs qui ont participé à cette version :</p>
<ul>
<li>Alexandre Bonhomme</li>
<li>Alexandre Lissy</li>
<li>Benjamin Carton</li>
<li>Clément Calmels</li>
<li>Christophe Gouiran</li>
<li>Christophe Lampin</li>
<li>Etienne Carriere</li>
<li>Florent Fourcot</li>
<li>François Revol</li>
<li>Hervé Werner</li>
<li>Jean-Benoist Leger</li>
<li>Jean-Philippe Dutrève</li>
<li>Jerem</li>
<li>John Morrow</li>
<li>Julien Veyssier</li>
<li>Laurent Bachelier</li>
<li>Mathieu Lordon</li>
<li>Pierre Mazière</li>
<li>Ryan Nowakowski</li>
<li>Roger Philibert</li>
<li>Romain Bignon</li>
<li>Simon Murail</li>
<li>Thomas Lecavelier</li>
<li>Vincent A.</li>
<li>Vincent Texier</li>
</ul><p><a href="http://weboob.org">Weboob</a> est un projet qui vit grâce à ses contributeurs. Si vous souhaitez l’améliorer et que vous connaissez le Python, n’hésitez pas à <a href="https://symlink.me/projects/weboob/wiki/How_to_Contribute">contribuer</a>.</p></div><div><a href="https://linuxfr.org/news/0-h-un-weboob.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/100955/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/news/0-h-un-weboob#comments">ouvrir dans le navigateur</a>
</p>
F. FlorentBenoît SibaudXavier Teyssierpalm123https://linuxfr.org/nodes/100955/comments.atomtag:linuxfr.org,2005:News/344702013-08-05T11:33:08+02:002015-03-15T19:35:49+01:00Weboob atteint le .gLicence CC By‑SA http://creativecommons.org/licenses/by-sa/3.0/deed.fr<div><p><a href="http://weboob.org">Weboob</a> (<em>Web Outside Of Browsers</em>) est un ensemble d'applications interagissant avec des sites web.</p>
<p>Quatre mois après la <a href="//linuxfr.org/news/weboob-0-f">dernière dépêche</a>, <strong>Weboob 0.g</strong> est paru samedi dernier, profitant des chaleurs rendant d'autres activités moins agréables.</p>
<p>Cette version bat la précédente (déjà exceptionnelle) en terme de commits, en dépassant le nombre symbolique des 500. Ils apportent des nouveautés comme la recherche sur des sites d'annonces d'emplois et le suivi de vos colis. Les améliorations de fonctionnalités existantes ne sont pas en reste, avec la résolution de demandes parfois très anciennes.</p>
<p>Ces nouveautés seront détaillées en seconde partie de la dépêche. Avec 19 nouveaux sites <em>boobisés</em>, Weboob atteint désormais le nombre de 125 modules !</p></div><ul><li>lien nᵒ 1 : <a title="http://weboob.org" hreflang="en" href="https://linuxfr.org/redirect/87261">Site web</a></li><li>lien nᵒ 2 : <a title="http://weboob.org/news" hreflang="en" href="https://linuxfr.org/redirect/87262">Liste complète des changements</a></li><li>lien nᵒ 3 : <a title="http://lists.symlink.me/pipermail/weboob/2013-August/000977.html" hreflang="en" href="https://linuxfr.org/redirect/87263">Annonce sur la liste de diffusion</a></li><li>lien nᵒ 4 : <a title="http://weboob.org/install" hreflang="en" href="https://linuxfr.org/redirect/87264">Installation</a></li><li>lien nᵒ 5 : <a title="http://weboob.org/modules" hreflang="en" href="https://linuxfr.org/redirect/87265">Modules</a></li><li>lien nᵒ 6 : <a title="http://weboob.org/applications/" hreflang="en" href="https://linuxfr.org/redirect/87266">Applications</a></li><li>lien nᵒ 7 : <a title="http://planet.weboob.org" hreflang="fr" href="https://linuxfr.org/redirect/87267">Planet Weboob</a></li><li>lien nᵒ 8 : <a title="https://symlink.me/projects/weboob/wiki/Association" hreflang="fr" href="https://linuxfr.org/redirect/87268">Association Weboob</a></li></ul><div><h2 class="sommaire">Sommaire</h2>
<ul class="toc">
<li><a href="#recherche-demploi">Recherche d'emploi</a></li>
<li><a href="#suivi-de-colis">Suivi de colis</a></li>
<li><a href="#histoires-de-c%C5%93ur">Histoires de cœur</a></li>
<li><a href="#petites-nouvelles">Petites nouvelles</a></li>
<li><a href="#communication">Communication</a></li>
<li><a href="#contributeurs">Contributeurs</a></li>
</ul><h2 id="recherche-demploi">Recherche d'emploi</h2>
<p>Weboob se lance une fois de plus dans l'aide contre la crise économique. Grâce aux modules <a href="http://adecco.fr">Adecco</a>, <a href="http://apec.fr">Apec</a>, <a href="http://fr.lolix.org">Lolix</a> et <a href="http://www.pole-emploi.fr">Pôle Emploi</a> vous pouvez accéder à de nombreuses annonces en un rien de temps. Pour lire ces annonces, vous pouvez soit le faire en console avec <a href="http://weboob.org/applications/handjoob">handjoob</a> ou en version graphique avec <a href="http://weboob.org/applications/qhandjoob">qhandjoob</a>.</p>
<p><img src="//img.linuxfr.org/img/687474703a2f2f666f7572636f742e66722f7765626f6f622f7168616e646a6f6f622e706e67/qhandjoob.png" alt="qhandjoob" title="Source : http://fourcot.fr/weboob/qhandjoob.png"></p>
<p>Les applications n'offrent pour l'instant pas d'intéractions très complexes, mais ont déjà les avantages habituels de Weboob : l'agrégation de résultats de sources différentes en une seule application. Il ne fait aucun doute que la courbe du chômage devrait s'en ressentir.</p>
<h2 id="suivi-de-colis">Suivi de colis</h2>
<p>Signe des temps de notre société, le suivi de colis est parfois synonyme de stress, d'énervement, et de frustration lors de l'appui sur la touche F5. C'est désormais terminé grâce à <a href="http://weboob.org/applications/parceloob">parceloob</a>, permettant déjà le suivi des colis Chronopost et UPS. Vous pouvez désormais suivre vos colis dans votre terminal.</p>
<p><img src="//img.linuxfr.org/img/687474703a2f2f70656f706c652e73796d6c696e6b2e6d652f7e726f6d312f70726f6a656374732f7765626f6f622f70617263656c6f6f622e706e67/parceloob.png" alt="parceloob" title="Source : http://people.symlink.me/~rom1/projects/weboob/parceloob.png"></p>
<h2 id="histoires-de-cœur">Histoires de cœur</h2>
<p>Vous avez peut-être remarqué les couleurs sur la capture d'écran précédente : eh oui, Weboob 0.g introduit de la couleur dans les applications consoles. Pour en profiter, il faut installer le paquet <a href="https://pypi.python.org/pypi/termcolor">python-termcolor</a>, actuellement dans la <a href="http://ftp-master.debian.org/new/python-termcolor_1.1.0-1.html">file d'attente NEW</a> de Debian. Boobank profite également de ces couleurs pour améliorer la lisibilité de vos comptes :</p>
<p><img src="//img.linuxfr.org/img/687474703a2f2f70656f706c652e73796d6c696e6b2e6d652f7e726f6d312f70726f6a656374732f7765626f6f622f626f6f62616e6b5f6761792e706e67/boobank_gay.png" alt="boobank_couleurs" title="Source : http://people.symlink.me/~rom1/projects/weboob/boobank_gay.png"></p>
<p>Autre grande nouveauté de cette version, il n'y a plus de limitation par défaut du nombre de résultats dans les applications. Il existait auparavant une limitation de 10 résultats, qui frustrait beaucoup de nouveaux utilisateurs n'ayant pas connaissance de l'option <code>-n</code>. Ce problème n'était cependant pas simple à corriger de façon élégante. C'est désormais fait, et en bonus, les commandes qui sont toujours limitées affichent un message si d'autres résultats sont disponibles mais non affichés.</p>
<p>Sous le capot, cela ne changera rien pour de nombreux utilisateurs, mais nous avons introduit un cache pour les requêtes DNS. Ce n'était pas de gaité de cœur, mais le site de la BNP nous y a forcé. En effet, ce site renvoie des <a href="https://symlink.me/issues/1209">adresses différentes à chaque requête</a>. Ces changements d'adresse provoquent des déconnexions et des difficultés d'accès aux comptes, la solution temporaire étant alors de rajouter une entrée dans le /etc/hosts pour être tranquille. Avec ce cache, cela fonctionnera pour tous les utilisateurs.</p>
<p>Dans les dépendances externes, Weboob est désormais compatible avec <a href="https://pypi.python.org/pypi/Pillow">Pillow</a>. Nous avons au passage découvert que la « couche de compatiblité » introduite par Ubuntu et Debian (en paquet expérimental pour cette dernière) <a href="http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=711343">n'était pas parfaite</a>. L'upstream de Pillow ne fournit pas de compatibilité, Ubuntu le fait mais de manière incomplète, ce qui rendait les rapports de bugs de nos utilisateurs incompréhensibles. Les utilisateurs de rancid peuvent donc installer cette nouvelle version pour corriger les bugs de certains modules.</p>
<p>Enfin, toute trace du support de python 2.5 est désormais supprimée. Cela a permis un peu de nettoyage de code.</p>
<h2 id="petites-nouvelles">Petites nouvelles</h2>
<p>Si vous êtes fans d'archivages de factures et de documents administratifs, <a href="http://weboob.org/applications/boobill">boobill</a> a désormais accès à trois nouveaux modules. Vous pouvez maintenant récupérer les factures de GDF SUEZ DolceVita, d'<a href="http://ameli.fr">Ameli</a> et d'Amelipro.</p>
<p>Du côté des modules bancaires, on peut signaler l'ajout des banques Delubac, Hello Bank et Citélis. Pour les comptes professionnels, beaucoup de modules permettent désormais d'accéder à ces comptes grâce à une simple configuration des modules habituels (BNP, Société Générale, LCL, etc).<br>
Enfin, pour les plus capitalistes d'entre nous, on peut désormais suivre l'évolution des investissements boursiers (sur le module ING uniquement pour le moment) avec boobank. Une confirmation des ordres des virements a également été ajoutée en mode interactif suite à une demande lors de la sortie de la version 0.f.</p>
<p>Si vous avez apprécié la version 0.f, vous serez d'ailleurs heureux d'apprendre l'ajout de nouveaux modules de recettes de cuisine, les sites Allrecipes et Supertoinette font leur apparition. Suite aux nombreux retours que nous avons reçu, les applications <a href="http://weboob.org/applications/qcookboob">qcookboob</a> et <a href="http://weboob.org/applications/qcineoob">qcineoob</a> ont été améliorées.</p>
<p>Comme tout détailler serait trop long, notons simplement l'apparition des modules V'Lille, Paroles.net, podnapisi, Arrêt sur Images et Grooveshark.</p>
<h2 id="communication">Communication</h2>
<p>Une partie de l'équipe Weboob était présente aux <a href="http://2013.rmll.info/">RMLL</a>, avec une conférence de présentation générale et une conférence plus spécifique sur le monde des sites Webs bancaires. Malheureusement ces conférences étaient programmées en parallèle, mais il est possible de <a href="http://people.symlink.me/%7Erom1/blog/weboob/RMLL_2013.html?view=blog">les revoir</a>.</p>
<h2 id="contributeurs">Contributeurs</h2>
<p>Merci aux contributeurs qui ont participé à cette version :</p>
<ul>
<li>Benjamin Carton</li>
<li>Christophe Lampin</li>
<li>Florent Fourcot</li>
<li>François D.</li>
<li>François Revol</li>
<li>Gabriel Kerneis</li>
<li>Johann Broudin</li>
<li>Julien Veyssier</li>
<li>Juliette Stehlé</li>
<li>Laurent Bachelier</li>
<li>Lucas Nussbaum</li>
<li>Mathieu Jourdan</li>
<li>Nicolas Duhamel</li>
<li>Noé Rubinstein</li>
<li>Romain Bignon</li>
<li>Sébastien Monel</li>
<li>Stefano Zacchiroli</li>
<li>Willy Villard</li>
</ul><p><a href="http://weboob.org">Weboob</a> est un projet qui vit grâce à ses contributeurs. Si vous souhaitez l’améliorer et que vous connaissez le Python, n’hésitez pas à <a href="https://symlink.me/projects/weboob/wiki/How_to_Contribute">contribuer</a>.</p></div><div><a href="https://linuxfr.org/news/weboob-atteint-le-g.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/99281/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/news/weboob-atteint-le-g#comments">ouvrir dans le navigateur</a>
</p>
F. FlorentBenoît SibaudXavier TeyssierclaudexNils Ratusznikhttps://linuxfr.org/nodes/99281/comments.atomtag:linuxfr.org,2005:News/340452013-03-27T23:28:49+01:002017-01-16T15:37:25+01:00Weboob 0.fLicence CC By‑SA http://creativecommons.org/licenses/by-sa/3.0/deed.fr<div><p><a href="http://weboob.org">Weboob</a> <em>(Web Outside Of Browsers)</em> est un ensemble d'applications interagissant avec des sites web. Seulement deux mois après la <a href="//linuxfr.org/news/weboob-0-e">dernière dépêche</a>, <strong>Weboob 0.f</strong> est parue mardi dernier.</p>
<p>C'est une version très riche en nouveautés et dont l'activité de développement a été remarquable. Cette nouvelle version est ainsi constituée de plus de 450 commits, représentant l'ajout de plus de 15 000 lignes dans les sources. </p>
<p>Weboob est maintenant capable de rechercher des recettes de cuisine, d'obtenir des informations sur le monde du cinéma, de télécharger des sous-titres pour des vidéos ainsi que de récupérer des textes de chansons. Les anciennes fonctionnalités ne sont pas oubliées, avec notamment l'ajout de modules pour de nouveaux sites bancaires.</p>
<p>Ces nouveautés seront détaillées en seconde partie de la dépêche. Avec 16 nouveaux sites <em>boobisés</em>, Weboob atteint désormais le nombre de 106 modules !</p></div><ul><li>lien nᵒ 1 : <a title="http://weboob.org" hreflang="en" href="https://linuxfr.org/redirect/85763">Site Web</a></li><li>lien nᵒ 2 : <a title="http://weboob.org/news" hreflang="en" href="https://linuxfr.org/redirect/85764">Liste complète des changements</a></li><li>lien nᵒ 3 : <a title="http://weboob.org/install" hreflang="en" href="https://linuxfr.org/redirect/85765">Installation</a></li><li>lien nᵒ 4 : <a title="http://weboob.org/modules" hreflang="en" href="https://linuxfr.org/redirect/85766">Modules</a></li><li>lien nᵒ 5 : <a title="http://weboob.org/applications/" hreflang="fr" href="https://linuxfr.org/redirect/85767">Applications</a></li><li>lien nᵒ 6 : <a title="http://planet.weboob.org/" hreflang="fr" href="https://linuxfr.org/redirect/85768">Planet Weboob</a></li><li>lien nᵒ 7 : <a title="https://symlink.me/projects/weboob/wiki/Association" hreflang="fr" href="https://linuxfr.org/redirect/85769">Association Weboob</a></li></ul><div><h2 class="sommaire">Sommaire</h2>
<ul class="toc">
<li><a href="#recherche-de-recettes-de-cuisine">Recherche de recettes de cuisine</a></li>
<li><a href="#tout-sur-le-cin%C3%A9ma">Tout sur le cinéma</a></li>
<li><a href="#petites-nouvelles">Petites nouvelles</a></li>
<li><a href="#lassociation">L'association</a></li>
<li><a href="#contributeurs">Contributeurs</a></li>
</ul><h2 id="recherche-de-recettes-de-cuisine">Recherche de recettes de cuisine</h2>
<p>C'est pas moins de trois sites de recettes de cuisines qui sont maintenant accessibles (<a href="http://marmiton.org">marmiton</a>, <a href="http://www.750g.com">750g</a>, <a href="http://www.cuisineaz.com/">cuisineaz</a>). Deux applications sont dédiées à cet effet, <a href="http://weboob.org/applications/qcookboob">QCookboob</a> pour la version graphique et <a href="http://weboob.org/applications/cookboob">Cookboob</a> pour son équivalent en console.</p>
<p>Les deux ont les mêmes fonctionnalités : la recherche, l'affichage d'informations sur la recette (bien entendu la recette, mais aussi les commentaires et les photos qui vont avec), et l'export. Cette dernière fonctionnalité permet pour le moment d'exporter vers le format KRecipesML, importable dans les logiciels <a href="http://krecipes.sourceforge.net/">Krecipes</a> et <a href="http://thinkle.github.com/gourmet/">gourmet</a>.</p>
<p>En résumé en images, le processus est donc très simple. On lance tout d'abord une recherche : </p>
<p><img src="//img.linuxfr.org/img/687474703a2f2f666f7572636f742e66722f7765626f6f622f71636f6f6b626f6f622d312e706e67/qcookboob-1.png" alt="Recherche avec QCookboob" title="Source : http://fourcot.fr/weboob/qcookboob-1.png"></p>
<p>On sélectionne la recette choisie : </p>
<p><img src="//img.linuxfr.org/img/687474703a2f2f666f7572636f742e66722f7765626f6f622f71636f6f6b626f6f622d322e706e67/qcookboob-2.png" alt="Informations détaillées QCookboob" title="Source : http://fourcot.fr/weboob/qcookboob-2.png"></p>
<p>On l'importe dans Krecipes : </p>
<p><img src="//img.linuxfr.org/img/687474703a2f2f666f7572636f742e66722f7765626f6f622f71636f6f6b626f6f622d332e706e67/qcookboob-3.png" alt="Import dans Krecipes" title="Source : http://fourcot.fr/weboob/qcookboob-3.png"></p>
<p>Cet exemple est typique de la philosophie de Weboob. On agrège les résultats de nombreux sites pour trouver rapidement le meilleur choix, et on utilise ensuite ses logiciels habituels grâce à l'export de donnée dans de multiples formats.</p>
<h2 id="tout-sur-le-cinéma">Tout sur le cinéma</h2>
<p>Après un bon repas, une activité courante pour briller en société est de tout connaître sur le cinéma. Weboob peut désormais vous aider à devenir imbattable au <a href="http://fr.wikipedia.org/wiki/Time's_Up!">Time's Up</a>, grâce aux applications <a href="http://weboob.org/applications/qcineoob">QCineoob</a> et <a href="http://weboob.org/applications/cineoob">cineoob</a>. Ces applications permettent des recherches sur des films, des acteurs, ainsi que des recherches un peu plus complexes (trouver les films en communs de deux acteurs par exemple). Bien entendu, il est possible d'afficher toutes les informations détaillées à propos de ces films et acteurs. Les modules permettant ces recherches sont pour le moment le très populaire <a href="http://www.imdb.com/">imdb</a> et le site français <a href="http://www.allocine.fr/">allociné</a>.</p>
<p>Un petit exemple en image : </p>
<p><img src="//img.linuxfr.org/img/687474703a2f2f666f7572636f742e66722f7765626f6f622f7163696e656f6f622e706e67/qcineoob.png" alt="Star Wars dadns QCineoob" title="Source : http://fourcot.fr/weboob/qcineoob.png"></p>
<p>Comme on peut le voir sur la gauche de la capture, d'autres fonctionnalités sont directement intégrées dans l'application. La première est la recherche de sous-titres, nouvelle fonctionnalité de cette version, accessible également via l'application spécialisée <a href="http://weboob.org/applications/suboob">suboob</a>. Autre fonctionnalité intégrée, la recherche de torrents correspondant au film (libre), déjà accessible dans les versions précédentes via l'application <a href="http://weboob.org/applications/weboorrents">weboorrents</a>.</p>
<p>En résumé, <a href="http://weboob.org/applications/qcineoob">QCineoob</a> est une application spécialisée qui devrait ravir les amateurs de cinéma. En quelques clics, on peut interagir avec des sites aux fonctionnalités différentes mais étant finalement utilisées très souvent en même temps.</p>
<h2 id="petites-nouvelles">Petites nouvelles</h2>
<p>Parmi les nouveaux modules, on peut citer l'accès à de nouvelles banques. Le module Crédit du Nord permet ainsi d'accéder à la banque du même nom, mais aussi à la Banque Courtois, la Banque Kolb et la Banque Tarneaud qui partagent le même moteur de site Web. Ce ne sont pas complètement des banques, mais on peut noter l'ajout des module Paypal et American Express.</p>
<p>Pour les amateurs de Karaoké, l'application <a href="http://weboob.org/applications/booblyrics">booblyrics</a> permet de télécharger les paroles des chansons.</p>
<p>L'application <a href="http://weboob.org/applications/pastoob">pastoob</a> permettant de poster et de récupérer des fichiers sur des sites comme <a href="http://pastebin.com/">Pastbin</a> et <a href="http://pastealacon.com/">Paste à la con</a> a été améliorée. On peut notamment désormais choisir l'expiration du fichier.</p>
<p>Du côté du dossier <em>contrib</em>, contenant des scripts évoluant autour de Weboob mais pas assez développés pour être considérés comme des applications, on peut noter l'amélioration de <code>downloadboob</code>. Ce script permet d'automatiser le téléchargement de vidéos, l'exemple typique étant le téléchargement de l'émission <a href="http://ddc.arte.tv">Dessous des Cartes</a> toutes les semaines, ou des <a href="http://www.canalplus.fr/c-divertissement/pid1784-c-les-guignols.html">Guignols de l'info</a>. La configuration a été améliorée, permettant de filtrer sur une expression rationnelle sur l'identifiant d'une vidéo.</p>
<p>Pour les amateurs de graphiques, un script <code>generic-munin</code> est désormais disponible. Il permet de créer un plugin munin pour n'importe quelle valeur numérique obtenue par Weboob (température d'une ville, solde de votre forfait téléphonique, solde de votre compte bancaire, etc).</p>
<p>Enfin, pour l'export de données, un formateur <a href="http://fr.wikipedia.org/wiki/JSON" title="Définition Wikipédia">JSON</a> a été ajouté.</p>
<h2 id="lassociation">L'association</h2>
<p>À l'occasion des trois ans du projet, les contributeurs et utilisateurs de Weboob étaient invités au Bouillon Belge le 13 février. Cette soirée fut l'occasion d'organiser l'assemblée constitutive de la naissante Association Weboob, décrite plus en détail sur le <a href="https://symlink.me/projects/weboob/wiki/Association">Wiki du projet</a>. Suite à cette assemblée, les statuts ont été déposés en préfecture et l'association Weboob a désormais une existence légale.</p>
<p>Pour la petite histoire, nous utilisons <a href="http://dev.kd2.org/garradin/">Garradin</a> pour le suivi des membres. Que nous n'avons pas encore <em>boobisé</em>…</p>
<h2 id="contributeurs">Contributeurs</h2>
<p>Merci aux contributeurs qui ont participé à cette version :</p>
<ul>
<li>Cyril Brulebois</li>
<li>Fabien Grumelard</li>
<li>Florent Fourcot</li>
<li>François Revol</li>
<li>Goffi</li>
<li>ianux</li>
<li>Julien Hebert</li>
<li>Julien Veyssier</li>
<li>Laurent Bachelier</li>
<li>Romain Bignon</li>
</ul><p><a href="http://weboob.org">Weboob</a> est un projet qui vit grâce à ses contributeurs. Si vous souhaitez l’améliorer et que vous connaissez le Python, n’hésitez pas à <a href="https://symlink.me/projects/weboob/wiki/How_to_Contribute">contribuer</a>.</p>
<p>Nous recherchons également un volontaire ayant des connaissances en paquet et dépôts Debian. Le <a href="http://debian.weboob.org/">dépôt Weboob</a> n'est plus à jour, les clefs de signatures sont expirées, et nous n'avons pas forcément les compétences en interne pour le remettre sur pied rapidement. C'est pourtant une demande régulière de nos utilisateurs de pouvoir bénéficier d'un paquet plus récent que la version 0.c présente dans Debian.</p></div><div><a href="https://linuxfr.org/news/weboob-0-f.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/97831/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/news/weboob-0-f#comments">ouvrir dans le navigateur</a>
</p>
F. FlorentLucas BonnetBenoît SibaudNÿcopatrick_ghttps://linuxfr.org/nodes/97831/comments.atomtag:linuxfr.org,2005:News/338222013-01-28T14:53:27+01:002013-01-28T14:53:27+01:00Weboob 0.eLicence CC By‑SA http://creativecommons.org/licenses/by-sa/3.0/deed.fr<div><p><a href="http://weboob.org">Weboob</a> <em>(Web Outside Of Browsers)</em> est un ensemble d'applications interagissant avec des sites <a href="/wiki/Web" title="Lien du wiki interne LinuxFr.org">Web</a>.</p>
<p>Trois mois après la <a href="http://linuxfr.org/news/weboob-0-d">dernière dépêche</a> et peu de temps avant le troisième anniversaire du projet, <strong>Weboob 0.e</strong> est parue vendredi dernier.</p>
<p>Elle reste sur la lancée de la version précédente avec beaucoup de corrections de bugs et une amélioration des modules existants. On n'oublie pas les nouveautés qui seront détaillées en seconde partie de la dépêche. Avec sept nouveaux sites <em>boobisés</em>, Weboob atteint désormais le nombre de 90 modules !</p></div><ul><li>lien nᵒ 1 : <a title="http://weboob.org" hreflang="en" href="https://linuxfr.org/redirect/85020">Site Web</a></li><li>lien nᵒ 2 : <a title="http://weboob.org/news" hreflang="en" href="https://linuxfr.org/redirect/85021">Liste complète des changements</a></li><li>lien nᵒ 3 : <a title="http://weboob.org/install" hreflang="en" href="https://linuxfr.org/redirect/85022">Installation</a></li><li>lien nᵒ 4 : <a title="http://weboob.org/modules" hreflang="en" href="https://linuxfr.org/redirect/85023">Modules</a></li><li>lien nᵒ 5 : <a title="http://weboob.org/applications/" hreflang="en" href="https://linuxfr.org/redirect/85024">Applications</a></li><li>lien nᵒ 6 : <a title="http://planet.weboob.org/" hreflang="fr" href="https://linuxfr.org/redirect/85025">Planet Weboob</a></li></ul><div><h2 id="sommaire">Sommaire</h2>
<ul><li>
<a href="#toc_0">Nouvelles options pour les applications</a>
</li>
<li>
<a href="#toc_1">Modules bancaires</a>
</li>
<li>
<a href="#toc_2">Réécriture de l'API pour les sondes</a>
</li>
<li>
<a href="#toc_3">Petites nouvelles</a>
</li>
<li>
<a href="#toc_4">Avenir technique</a>
</li>
<li>
<a href="#toc_5">Avenir administratif</a>
</li>
<li>
<a href="#toc_6">Évènements</a>
</li>
<li>
<a href="#toc_7">Contributeurs</a>
</li>
</ul><h2 id="toc_0">Nouvelles options pour les applications</h2>
<p>Avec l'introduction d'une vérification des certificats SSL dans la dernière version, cette nouvelle option était logique : on peut maintenant désactiver la vérification avec l'option <code>-I</code>. Autre flexibilité, il est possible pour un module de déclarer une liste de certificats, contre un unique choix auparavant (certains sites présentant différents certificats selon des critères difficiles à déterminer).</p>
<p>L'option <code>-e</code> améliore quant à elle le chargement des <em>backends</em> en permettant d'en exclure une liste. Cela évite de trouver par hasard une vidéo du parlement européen en recherchant un programme pour votre soirée.</p>
<h2 id="toc_1">Modules bancaires</h2>
<p>Ils sont une fois de plus à l'honneur, avec l'ajout des modules pour le Crédit Coopératif, Axa Banque, la banque Barclays, la banque Carrefour, Gan Assurances et le Crédit Mutuel du Sud Ouest. C'est maintenant pas moins de 21 sites de banque qui peuvent être accédés grâce à l'application boobank. Autre nouveauté, les modules bancaires peuvent désormais gérer plusieurs monnaies et non plus seulement l'euro.</p>
<p>Pour utiliser toutes ces données, nous avons eu la bonne surprise de découvrir une intégration de Weboob dans le logiciel <a href="http://skrooge.org/node/183">skrooge</a>. L'équipe Weboob continue elle de proposer un <a href="https://symlink.me/projects/weboob/wiki/Kmymoney">module expérimental</a> pour <a href="http://kmymoney2.sourceforge.net">kmymoney</a>.</p>
<h2 id="toc_2">Réécriture de l'API pour les sondes</h2>
<p>Depuis environ un an, Weboob intégrait une <a href="https://symlink.me/projects/weboob/wiki/#Architecture">capability</a> de mesure de la hauteur et du débit de fleuves, permettant ce genre de suivis :</p>
<p>
<img src="//img.linuxfr.org/img/687474703a2f2f666f7572636f742e66722f7765626f6f622f656c62655f6472657364656e2d796561722e706e67/elbe_dresden-year.png" alt="http://fourcot.fr/weboob/elbe_dresden-year.png" title="Source : http://fourcot.fr/weboob/elbe_dresden-year.png" />
</p>
<p>Cette <em>capability</em> était très spécialisée et a donc été récrite pour être plus générique et gérer tout type de sonde. La gestion des niveaux d'alerte a également été ajouté, ce qui permet d'envisager de gérer des sites comme les alertes au pollen ou le niveau de diverses pollutions.</p>
<h2 id="toc_3">Petites nouvelles</h2>
<p>Une limitation historique sur les lecteurs vidéos a été supprimée, permettant de configurer simplement en indiquant un chemin vers un exécutable. Autre amélioration, on peut désormais passer des options à ce lecteur directement.</p>
<p>Du côté des modules permettant de gérer les factures et abonnements, la date de fin de période pour les abonnements périodiques est maintenant récupérable, permettant de savoir quand la consommation sera remise à zéro. Pour les contrats non-périodiques, la date de validité du crédit est récupérée. Les trois modules d'abonnements téléphoniques ont été mis à jour.</p>
<h2 id="toc_4">Avenir technique</h2>
<p>Le plus grand projet technique de Weboob est probablement la réécriture de la classe Browser. Comme son nom l'indique, cette classe permet de simuler un navigateur et doit simplifier l'écriture de modules, en proposant de nombreux fonctions prêtes à l'emploi. Cet outil reste cependant optionnel, le module CMB, par exemple, ne l'utilise pas.</p>
<p>Actuellement, cette classe est basée sur la bibliothèque <a href="http://wwwsearch.sourceforge.net/mechanize/">Mechanize</a>. À l'usage, cette bibliothèque se relève cependant parfois contraignante, notamment sur la gestion des formulaires ou l'impossibilité de faire proprement du SSL. Nous souhaiterions donc nous en affranchir pour développer de nouvelles fonctionnalités.</p>
<p>C'est pourquoi le projet Browser2 est lancé depuis de nombreux mois. Cette fois-ci, le projet se base sur la bibliothèque <a href="http://docs.python-requests.org/en/latest/">Requests</a> qui nous semble prometteuse et plus flexible que Mechanize. Malheureusement, cette bibliothèque ne semble pas toujours pensée pour avoir des utilisateurs sur le long terme. La sortie de la version 1.0 aurait ainsi pu se nommer « Oups, j'ai tout cassé, bon courage ». Sachant la variété de versions de la bibliothèque dans les distributions, il est assez démotivant de tenter de tout réécrire et d'envisager de maintenir toutes les versions pour que Weboob fonctionne partout.</p>
<p>Tout cela explique en partie le retard sur Browser2… Nous envisageons donc pour les prochaines versions de faire une fourchette de Requests, afin de maintenir une version stable correspondant à nos besoins.</p>
<h2 id="toc_5">Avenir administratif</h2>
<p>Weboob grandit et a maintenant des débouchés professionnels. Cela nous impose de réfléchir à un cadre qui n'était pas forcément prévu au départ. C'est pourquoi nous sommes en cours de création d'une association, qui sera chargée de piloter le projet et de protéger la « marque » Weboob, notamment de gérer les sites Internet.</p>
<p>Le site web <a href="http://weboob.org">weboob.org</a> ne changera pas et continuera de présenter le projet, ainsi que la documentation permettant de l'utiliser. En parallèle, le site Web <a href="http://weboob.com">weboob.com</a> va être officiellement lancé et regroupera toutes les entreprises proposant des services autour de Weboob (notamment <a href="http://www.budget-insight.com">Budget Insight</a> qui contribue fortement aux modules bancaires de Weboob et propose des services autour de Weboob en plus de l'utiliser en interne).</p>
<p>Avec cette association, le but est de maintenir l'indépendance du projet Weboob sur le long terme et d'éviter tout risque de conflits d'intérêts.</p>
<h2 id="toc_6">Évènements</h2>
<p>Weboob étant un projet communautaire, on peut retrouver ses contributeurs à de nombreux évènements. Nous étions ainsi au <a href="http://events.ccc.de/">29C3</a> à Hambourg en fin d'année dernière. On a même pu nous voir à une <a href="http://people.symlink.me/~rom1/blog/weboob/Weboob_au_CCC.html">présentation largement improvisée</a>. Plusieurs d'entre nous serons également en fin de semaine à la <a href="https://fosdem.org/">FOSDEM</a>, mais nous ne pourrons pas présenter le projet cette fois-ci.</p>
<p>Des soirées entre membres de la communauté sont régulièrement organisées, toujours sur Paris où vivent la plupart des principaux contributeurs. La prochaine sera le 13 février, journée anniversaire du projet. Pour plus d'informations, n'hésitez pas à passer sur le chan IRC #weboob sur le réseau freenode.</p>
<h2 id="toc_7">Contributeurs</h2>
<p>Merci aux contributeurs qui ont participé à cette version :</p>
<ul><li>Adrien Kunysz</li>
<li>Florent Fourcot</li>
<li>Gabriel Kerneis</li>
<li>Gilles-Alexandre Quenot</li>
<li>Grmbl Frechneu</li>
<li>Julien Hebert</li>
<li>Kevin Pouget</li>
<li>Laurent Bachelier</li>
<li>Noé Rubinstein</li>
<li>Roger Philibert</li>
<li>Romain Bignon</li>
<li>Theo</li>
<li>Xavier Guerrin</li>
</ul><p>Nous remercions également le contributeur gérant le <a href="http://packages.gentoo.org/package/www-client/weboob">paquet Weboob</a> pour la distribution Gentoo.</p>
<p><a href="http://weboob.org">Weboob</a> est un projet qui grossit et qui vit grâce à ses contributeurs. Si vous souhaitez l’améliorer et que vous connaissez le Python, n’hésitez pas à <a href="https://symlink.me/projects/weboob/wiki/How_to_Contribute">contribuer</a>.</p></div><div><a href="https://linuxfr.org/news/weboob-0-e.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/97224/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/news/weboob-0-e#comments">ouvrir dans le navigateur</a>
</p>
F. Florentbaud123Xavier Teyssiertuiu polhttps://linuxfr.org/nodes/97224/comments.atom