GNU/Linux Magazine Hors-série N°
Numéro
114

Déployez vos agents sur la Toile... Web scraping & agents de recherche

Temporalité
Mai/Juin 2021
Image v3
Déployez vos agents sur la toile... Web scrapping & agents de recherche
Article mis en avant

Dans ce numéro...


Joyeux anniversaire Python ! Cette année Python fête ses 30 ans ! Il me semblait donc important de lui consacrer un édito pour revenir sur le succès de ce langage.
Voici une sélection d'ouvrages pour la plupart récemment sortis ou sur le point de sortir et qui ont attiré notre attention.
Vous avez l’habitude d’allouer de la mémoire, mais vous oubliez constamment de la libérer ? Vous souhaitez optimiser le processus d’exécution de vos programmes ? Grâce à Valgrind, vos soucis d’amélioration des performances n’existeront plus !
Il ne viendrait à l’idée à personne de nos jours de se lancer dans la récupération de données sur le Web sans s’appuyer sur un framework simplifiant la tâche et évitant de réinventer la roue (carrée). Voyons donc quelques outils indispensables permettant de mener à bien cette tâche.
Comment organiser un projet mettant en œuvre du web scraping ? Pour répondre à cette question, le plus simple est de se confronter réellement à un problème d’extraction de données, et de voir comment l’analyser et le résoudre.
De nos jours, lorsque l’on recherche une information, on se tourne immédiatement vers le Web. Ainsi, de très nombreuses informations sont mises à jour quotidiennement et il faut donc penser à visiter les sites les produisant, de manière à être au courant des dernières modifications. Et si nous codions un bot qui ferait cela pour nous ?
Le web scraping, c’est l’activité qui consiste à gratter (to scrap) du code HTML pour en extraire des données exploitables. Node.js se prête particulièrement bien à l’exercice, aussi je vous propose d’apprendre à gratter de la donnée avec ce formidable outil.
Au travers de deux articles [1-2] sur les principes de l’orienté objet en C++, nous avions abordé encapsulation, héritage, et polymorphisme. Nous proposons dans ce nouvel article les classes de base pour gérer la persistance d’objets dans des fichiers. Ces classes utilisent les principes énoncés ci-dessus et présentent des stratégies via la généricité. Un exemple de stratégie pour stocker en binaire pourra être redéfini pour d’autres stratégies, comme un stockage en XML.
S’il y a bien un domaine dans lequel excelle LaTeX, c’est l’écriture de formules mathématiques complexes et autres algorithmes. Une fois que l’on connaît et que l’on comprend la syntaxe, c’est très simple… encore faut-il avoir vu cela au moins une fois !

Magazines précédents

Débogage : outils et méthodes pour traquer les erreurs
GNU/Linux-Magazine Hors-série N°111
Débogage : outils et méthodes pour traquer les erreurs
Python 3 pour débuter la programmation
GNU/Linux-Magazine Hors-série N°110
Python 3 pour débuter en programmation
Dossier : Programmez avec un moteur 3D !
GNU/Linux-Magazine Hors-série N°109
Programmez avec un moteur 3D !
Dossier : Codez une fois, déployez partout !
GNU/Linux-Magazine Hors-série N°108
Codez une fois, développez partout !

Les derniers articles Premiums

Les derniers articles Premium

Du graphisme dans un terminal ? Oui, avec sixel

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

On le voit de plus en plus, les outils en ligne de commandes s'étoffent peu à peu d'éléments graphiques sous la forme d'émojis UTF8. Plus qu'une simple décoration, cette pointe de « graphisme » dans un monde de texte apporte réellement un plus en termes d'expérience utilisateur et véhicule, de façon condensée, des informations utiles. Pour autant, cette façon de sortir du cadre purement textuel d'un terminal n'est en rien une nouveauté. Pour preuve, fin des années 80 DEC introduisait le VT340 supportant des graphismes en couleurs, et cette compatibilité existe toujours...

Game & Watch : utilisons judicieusement la mémoire

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Au terme de l'article précédent [1] concernant la transformation de la console Nintendo Game & Watch en plateforme de développement, nous nous sommes heurtés à un problème : les 128 Ko de flash intégrés au microcontrôleur STM32 sont une ressource précieuse, car en quantité réduite. Mais heureusement pour nous, le STM32H7B0 dispose d'une mémoire vive de taille conséquente (~ 1,2 Mo) et se trouve être connecté à une flash externe QSPI offrant autant d'espace. Pour pouvoir développer des codes plus étoffés, nous devons apprendre à utiliser ces deux ressources.

Body