undefined
Blog > Octoparse > Post

Comment créer un web scraper d'images sans coder?

Thursday, September 30, 2021

Enregistrer une image à partir de la page Web est simple. Il suffit de cliquer à droite et de sélectionner "Enregistrer l'image sous". Mais que se passe-t-il si vous avez des centaines, voire des milliers d'images à enregistrer? La même astuce fonctionnera-t-elle? En tout cas, pas pour moi! Voyons comment le crawler d'images peut vous aider.

 

Sommaire

Explorer des images sans coder

Construire votre crawler d'images

Récupérer des images directement à partir d'une page Web

Extraire des images en taille réelle

Obtenir des images en taille réelle à partir des images miniatures

Tutoriel vidéo

 

Explorer des images sans codage

Dans cet article, je veux vous montrer comment construire rapidement un crawler d'images avec ZERO codage. Même si vous n'avez absolument aucun connaissances techniques, vous devriez être en mesure de le faire en 30 minutes. Ainsi, pour n'importe quelle raison vous pouvez avoir besoin des images pour, re-blog, ou la formation de la machine, la même astuce peut être étendu à littéralement tous les sites Web. Vous êtes prêt? On commence. 


Installations

Vous aurez besoin des outils suivants:
 Octoparse: un outil visuel de scraping web sans codage.
 TabSave: une extension Chrome permettant de télécharger instantanément des images à partir d'une liste d'URL.

 

Conditions préalables

Il serait préférable que vous soyez familier avec le fonctionnement d'Octoparse en général.

Consulter la page Octoparse Scraping si vous ne connaissez pas cet outil. 

 

Tutoriel vidéo(Prenons l'exemple d'Aliexpress)

Vous voulez télécharger en masse des milliers d'images? Cette vidéo est un tutoriel qui donne un guide étape par étape pour aider les utilisateurs à récupérer et télécharger des images d'Aliexpress avec Octoparse. Une fois que vous aurez maîtrisé l'outil, vous pourrez télécharger des images de n'importe quel site Web sans effort !

 

 

 

Construire votre crawler d'images

Toutes les images ne sont pas créées égales! Certaines images peuvent être récupérées directement à partir de la page Web, d'autres ne peuvent être déclenchées qu'en cliquant sur les miniatures. Dans ce tutoriel, je vais vous montrer comment gérer chacun de ces scénarios à l'aide de quelques exemples. 

 

Exemple 1:Scraper des Images directement à partir de la page Web

Pour démontrer, nous allons récupérer des images de chiens sur Pixabay.com. Pour suivre, chercher "dogs" sur Pixabay.com et vous devriez arriver sur cette page.

 

Étape 1 : Entrer l'URL

Cliquer sur "+ Tâche" pour lancer une nouvelle tâche en mode avancé. Ensuite, entrer l'URL de la page Web cible dans la zone de texte et cliquer sur "Save URL".

 

save url

 

Étape 2 : Sélectionner les images que vous souhaitez enregistrer

 

Ensuite, nous allons indiquer au robot les images à récupérer.

Cliquer sur la première image. Le panneau Action Tips indique maintenant "Image selected, 100 similar images found". C'est génial, c'est exactement ce dont nous avons besoin. Sélectionner "Select all", puis "Extract image URL in the loop".

select all

 

Étape 3 : Extraire d'images dans les pages

Bien sûr, nous ne voulons pas seulement les images de la page 1, mais celles de toutes les pages (ou d'autant de pages que nécessaire).
Pour ce faire, il faut descendre jusqu'au bas de la page actuelle, repérer le bouton "next page" et cliquer dessus.

Nous voulons évidemment cliquer plusieurs fois sur le bouton "nest page", il est donc logique de sélectionner "Loop click the selected link" dans le panneau Action Tips.

 

Maintenant, juste pour confirmer si tout a été configuré correctement. Activer le workflow dans le coin supérieur droit. Le workflow terminé devrait ressembler à ceci,

 

Vérifier également le panneau de données et s'assurer que les données souhaitées sont extraites correctement. 

data extracted


Étape 4 : Crawler avec options de l'Auto-scrolling

 

Il y a juste une dernière chose à modifier avant de lancer le robot d'exploration.

Pendant le débogage, j'ai remarqué que le code source HTML est rafraîchi dynamiquement lorsque l'on fait défiler la page Web. En d'autres termes, si la page Web ne défile pas, nous ne pourrons pas obtenir les URL des images correspondantes à partir du code source. Heureusement, Octoparse permet de faire défiler automatiquement la page vers le bas. 

Nous devrons ajouter le défilement automatique à la fois lorsque le site Web se charge pour la première fois et lorsqu'il se pagine.

Cliquer sur "Go to Webpage" dans le workflow. Sur le côté droit du workflow, cliquer sur "Advanced options" et cocher "Scroll down to the bottom of the page when finish loading".

Ensuite, décider combien de fois défiler ainsi qu'à quel rythme. Ici, j'ai défini scroll times=40, interval=1 seconde, scroll way=scroll down pour un écran. En gros, cela signifie qu'Octoparse fera défiler un écran vers le bas 40 fois avec une seconde entre chaque défilement.

Je n'ai pas trouvé ce paramètre au hasard, mais j'ai fait quelques ajustements pour m'assurer que ce paramètre fonctionne. J'ai également remarqué qu'il était essentiel d'utiliser "Scroll down for one screen" par opposition à "scroll down to the bottom of the page". Principalement parce que les URL des images dont nous avons besoin ne sont rafraîchies que dans le code source. 

 

auto crawling settings

 

Appliquer le même paramètre à l'étape de la pagination. 

Cliquer sur "Click to paginate " dans le workflow, utiliser exactement le même paramètre pour le défilement automatique. 

click to paginate

 

Étape 5 : Lancer votre crawler!

Voilà, c'est fait. C'est terminé! Exécutons le crawler et voyons s'il fonctionne.

Cliquer sur "Start Extraction" dans le coin supérieur gauche. Choisir "extraction locale". Cela signifie que vous exécuterez le robot d'exploration sur votre propre ordinateur au lieu du serveur cloud. [Télécharger le fichier d'extraction utilisé dans cet exemple et essayez-le vous-même.]

Exemple 2 : Récupérer des images en taille réelle[full-sized]

Question: Que faire si vous avez besoin des images en taille réelle ? 

Pour cet exemple, nous utiliserons le même site web https://pixabay.com/images/search/dogs/ pour montrer comment vous pouvez obtenir les photos en taille réelle.

Étape 1 : commencer une nouvelle tâche

 

Lancer une nouvelle tâche en cliquant sur " + Task " dans le mode avancé. 

 

 advanced mode

Entrer l'URL de la page web cible dans la zone de texte puis cliquer sur "Enregistrer l'URL" pour continuer.

Étape 2 : Sélectionnez les images que vous souhaitez télécharger.

Contrairement à l'exemple précédent où nous pouvions capturer les images directement, nous devrons maintenant cliquer sur chaque image individuelle afin de voir/obtenir l'image en taille réelle. 

Cliquer sur la première image, le panneau Action Tips doit indiquer "Image selected, 100 similar images found". 

Cliquer "Select all".

 

  

Ensuite, "Loop click each image". 

 

Étape 3: Obtenir URLs des images

Maintenant que nous sommes arrivés sur la page de l'image en taille réelle, les choses sont beaucoup plus faciles. 

Cliquer sur l'image en taille réelle, puis sélectionner "Extract the URL of the selected image". 

 

Comme toujours, vérifier le panneau de données et s'assurer que les données souhaitées sont extraites correctement.

 

Étape 4 : Ajouter la pagination pour parcourir les pages.

Cliquer sur "Go to the webpage", choisir le bouton "Next page" puis cliquer. Sélectionner "Loop clicked the selected link" dans le panneau "Action Tips". 

Le workflow terminé devrait ressembler à ceci,

 

Si elle n'a pas la même apparence. Faites-le glisser pour le déplacer. 

Étape 5 : Exécuter votre crawler !

C'est fait ! Tester le crawler. [Télécharger le fichier du crawler utilisé dans cet exemple et essayez-le vous-même].

 

Exemple 3: Obtenir des images en taille réelle à partir des images miniatures

 

Je suis sûr que vous avez vu quelque chose de similaire lorsque vous faites des achats en ligne ou si vous gérez une boutique en ligne. Pour les images de produits, les images miniatures sont certainement les formes d'affichage d'images les plus courantes. L'utilisation de ces images réduit considérablement la bande passante et le temps de chargement, ce qui permet aux internautes de parcourir plus facilement les différents produits. 

Il y a deux façons d'extraire les images en taille réelle à partir des images miniatures en utilisant Octoparse.
Option 1 - Vous pouvez configurer un clic en boucle pour cliquer sur chacune des images miniatures, puis procéder à l'extraction de l'image en taille réelle une fois celle-ci chargée.
Option 2 - Comme la plupart des images miniatures partagent exactement le même modèle d'URL que les images complètes correspondantes, mais avec un numéro différent indiquant les différentes tailles, il est logique d'extraire l'URL de la miniature puis de remplacer le numéro de la taille de la miniature par celui de l'image complète. L'outil intégré de traitement des données d'Octoparse permet de le faire facilement. 

 

Étant donné que nous avons déjà examiné quelque chose de similaire à l'option 1 dans l'exemple 2, je vais détailler l'option 2 dans cet exemple. Nous allons utiliser une page de produit sur Flipcart.com pour faire la démonstration. 

Avant de commencer le travail, il est utile de confirmer si cette tactique peut être appliquée en regardant l'URL de l'image pour la miniature et son homologue en taille réelle. J'ai donc choisi une des miniatures pour la vérifier.

Thumbnail URL: https://rukminim1.flixcart.com/image/128/128/jatym4w0/speaker/mobile-tablet-speaker/v/u/7/philips-in-bt40bk-94-original-imafybc9ysphpzhv.jpeg?q=70

Full-size URL: https://rukminim1.flixcart.com/image/416/416/jatym4w0/speaker/mobile-tablet-speaker/v/u/7/philips-in-bt40bk-94-original-imafybc9rqhdna8z.jpeg?q=70

Noter que la seule différence entre ces deux URL est le nombre indiquant la taille de l'image. "128" pour la miniature et "416" pour l'image en taille réelle. Cela signifie que si nous avons extrait les URL des miniatures, nous pouvons les convertir en URL de taille normale en remplaçant simplement "128" par "416".  

 

Étape 1 : Entrer l'URL

Lancer l'application Octoparse, commencer une nouvelle tâche, puis saisir l'URL cible dans la zone de texte. 

 

Étape 2 : Sélectionner l'image miniature

Cliquer sur la première image miniature. Le panneau Conseils d'action indique maintenant "Element selected. 5 similar buttons found.". Bravo ! Octoparse a reconnu automatiquement les autres miniatures. 

Sélectionner "Select all". 

 

Ensuite, sélectionner " Extract the text of the selected elements ". Ce n'est évidemment pas ce que nous voulons, mais nous pourrons le modifier plus tard. 

 

Cliquer sur le bouton "Workflow"  dans le coin supérieur droit. Remarquer que nous n'avons rien extrait.

 

 

C'est un peu normal, car il n'y avait apparemment pas de texte à extraire. Ce que nous avons vraiment besoin de récupérer est l'URL de l'image cachée dans le code source Html. Donc maintenant nous devons changer le type de données à extraire. 

Étape 3 : Extraire les URL des images

Cliquer sur l'icône "Customize" (petit crayon) en bas, cliquer sur "Define data extracted", cocher "Extract outer HTML, including source code, text for format and image". Cliquer sur "OK" pour enregistrer. 

 

Étape 4 : Utiliser RegEx pour faire correspondre les URLs

Utiliser l'outil Expression régulière pour faire correspondre l'URL de l'image à l'ensemble du morceau de HTML externe. 

Cliquer à nouveau sur l'icône "Customize". Cette fois, cliquer sur "Refine extracted data". Il y a quelques étapes de nettoyage de données à ajouter. 

Cliquer sur "Add step", puis sélectionner "Match with regular expression". Si vous n'êtes pas familier avec les expressions régulières, n'hésitez pas à utiliser l'outil RegEx intégré que j'aime beaucoup. 

L'outil RegEx est plutôt explicite. Entrer le début et la fin de la chaîne de données souhaitée. Cliquer sur " Generate " pour générer l'expression régulière correspondante. Cliquer sur "Match" pour voir si les données souhaitées peuvent être mises en correspondance avec succès. Si vous vous attendez à ce que plusieurs lignes correspondent, cocher la case "Tout correspondre". 

On a fini? Presque, mais pas encore. Rappelez-vous qu'il ne s'agit que de l'URL de la miniature et que nous devons encore remplacer "128" par "416" afin d'en faire des URL d'images en taille réelle. 

Cliquer une fois de plus sur "Add step". Sélectionner "Replace". Remplacer "128" par "416". Cliquer sur "Evaluate". Enfin, nous avons l'URL dont nous avons besoin.

 

Vérifier les données extraites:

 

Étape 5 : tester le crawler

Dans l'exemple ci-dessus, nous avons extrait l'URL de chaque image dans une ligne individuelle. Que faire si vous avez besoin d'extraire toutes les URL ensemble? Vous pouvez le faire en extrayant le HTML externe de toutes les miniatures à la fois. Ensuite, utiliser RegEx pour faire correspondre les URL individuelles, remplacer le numéro de taille, et vous obtiendrez toutes les URL d'images en taille réelle extraites dans une seule ligne. 

 

1) Charger le site Web et cliquer sur l'une des miniatures. Cliquer sur l'icône "Expand" dans le coin inférieur droit du panneau Action Tips jusqu'à ce que toute la section des images miniatures soit surlignée en vert, ce qui signifie qu'elles sont sélectionnées.

 

2) Sélectionner "Extract Outer HTML of the selected element" dans le panneau Action Tips.

 

 

3) Revenir au mode de workflow 

Répéter les mêmes étapes de nettoyage des données pour faire correspondre les URL des vignettes individuelles.
Choisir "Match All" cette fois-ci car nous devons faire correspondre plus d'une URL à partir du code HTML extrait.
Là encore, remplacer "128" par "416". Enfin, nous avons extrait toutes les URL des images en taille réelle en une seule ligne. [Télécharger le fichier du crawler utilisé dans cet exemple et essayez-le vous-même.]
Maintenant que nous avons extrait les URL des images, allons télécharger les fichiers image à l'aide de l'un de mes outils préférés, TabSave. Il existe également d'autres téléchargeurs d'images similaires disponibles sur le Web et la plupart sont gratuits. 

 
1) Exporter les données extraites vers Excel ou des formats similaires. 

2) Copier et coller les URL des images dans TabSave.
3) Commencer à télécharger les fichiers en cliquant sur l'icône de téléchargement en bas de la page.
J'espère que ce tutoriel vous donnera un bon départ dans l'extraction d'images/données du Web. Cela dit, chaque site Web est différent. Selon les sites Web que vous ciblez, certains ajustements peuvent être nécessaires pour que cela fonctionne.
Cependant, le concept général et le workflow peuvent être appliqués à la plupart des sites Web. Si vous avez des questions sur la configuration d'un crawler dans Octoparse, vous pouvez consulter Octoparse Help Center ou contacter directement support@octoparse.com

Téléchargez Octoparse pour démarrer le web scraping ou contactez-nous pour toute autre demande
questions sur le web scraping!

Contactez-Nous Télécharger
Nous utilisons des cookies pour améliorer votre expérience de navigation. Découvrez comment nous utilisons les cookies et comment vous pouvez les contrôler en cliquant sur les paramètres des cookies. Si vous continuez à utiliser ce site, vous consentez à notre utilisation des cookies.
Accepter Rejeter