Maison >développement back-end >Tutoriel Python >Grattez les résultats de recherche Google à l'aide de Python

Grattez les résultats de recherche Google à l'aide de Python

Patricia Arquette
Patricia Arquetteoriginal
2025-01-01 00:50:09952parcourir

Grattez les résultats de recherche Google à l'aide de Python

Google détient un immense volume de données pour les entreprises et les chercheurs. Il effectue plus de 8,5 milliards de recherches quotidiennes et détient 91 % du marché mondial des moteurs de recherche.

Depuis les débuts de ChatGPT, les données de Google ont été utilisées non seulement à des fins traditionnelles telles que le suivi des classements, la surveillance des concurrents et la génération de leads, mais également pour développer des modèles LLM avancés, former des modèles d'IA et améliorer les capacités de traitement du langage naturel ( PNL) modèles.

Scraping Google, cependant, n’est pas facile pour tout le monde. Cela nécessite une équipe de professionnels et une infrastructure robuste pour gratter à grande échelle.

Scrape Google Search Results Using Python

Dans cet article, nous apprendrons à extraire les résultats de recherche Google à l'aide de Python et BeautifulSoup. Cela vous permettra de créer vos propres outils et modèles capables d’exploiter les données de Google à grande échelle.

Commençons !

Que sont les résultats de recherche Google ?

Les résultats de recherche Google sont les listes qui apparaissent sur Google en fonction de la requête de l'utilisateur saisie dans la barre de recherche. Google utilise largement le NLP pour comprendre ces requêtes et présenter aux utilisateurs des résultats pertinents. Ces résultats incluent souvent des extraits de code en plus des résultats organiques, tels que les derniers aperçus de l'IA, les sections Les gens demandent également, les recherches associées et les graphiques de connaissances. Ces éléments fournissent des informations résumées et associées aux utilisateurs en fonction de leurs requêtes.

Applications de grattage des données de recherche Google

Les données de recherche Google ont diverses applications :

  • Créer un outil de suivi des classements et des mots clés à des fins de référencement.
  • Recherche d'entreprises locales.
  • Construire des moteurs LLM.
  • Découvrir des sujets explosifs pour les tendances potentielles du futur.

Pourquoi Python pour scraper Google ?

Python est un langage polyvalent et robuste qui fournit une puissante configuration de prise de contact HTTP pour supprimer des sites Web avec lesquels d'autres langages peuvent avoir des difficultés ou avoir des taux de réussite inférieurs. À mesure que la popularité des modèles d'IA formés sur des données récupérées sur le Web augmente, la pertinence de Python dans les sujets liés au scraping Web continue de croître au sein de la communauté des développeurs.

De plus, les débutants souhaitant apprendre Python en tant que compétence de web scraping peuvent le comprendre facilement grâce à sa syntaxe simple et à la clarté de son code. De plus, il bénéficie d'un énorme soutien communautaire sur des plateformes comme Discord, Reddit, etc., qui peut vous aider à résoudre n'importe quel niveau de problème auquel vous êtes confronté.

Ce langage évolutif excelle dans les performances de scraping Web et fournit des frameworks puissants tels que Scrapy, Requests et BeautifulSoup, ce qui en fait un choix supérieur pour scraper Google et d'autres sites Web par rapport à d'autres langages.

Récupérer les résultats de recherche Google avec Python

Cette section nous apprendra à créer un script Python de base pour récupérer les 10 premiers résultats de recherche Google.

Exigences

Pour suivre ce tutoriel nous devons installer les bibliothèques suivantes :

  • Demandes : pour extraire des données HTML de l'URL de recherche Google.

  • BeautifulSoup — Pour affiner les données HTML dans un format structuré.

Installation

La configuration est simple. Créez un fichier Python et installez les bibliothèques requises pour commencer.

Exécutez les commandes suivantes dans votre dossier de projet :

    touch scraper.py

Et puis installez les bibliothèques.

    pip install requests
    pip install beautifulsoup4

Processus

Nous avons terminé la configuration et avons tout le matériel pour avancer. Nous utiliserons la bibliothèque Requests en Python pour extraire le HTML brut et le BeautifulSoup pour l'affiner et obtenir les informations souhaitées.

Mais qu’est-ce que « informations souhaitées » ici ?

Scrape Google Search Results Using Python

Les données filtrées contiendraient ces informations :

  • Titre
  • Lien
  • Lien affiché
  • Description
  • Position du résultat

Importons d'abord nos bibliothèques installées dans le fichier scraper.py.

    from bs4 import BeautifulSoup
    import requests

Ensuite, nous ferons une requête GET sur l'URL cible pour récupérer les données HTML brutes de Google.

headers={'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/108.0.0.0 Safari/537.361681276786'}
    url='https://www.google.com/search?q=python+tutorials&gl=us'
    response = requests.get(url,headers=headers)
    print(response.status_code)

La transmission des en-têtes est importante pour que le scraper ressemble à un utilisateur naturel qui visite simplement la page de recherche Google pour obtenir des informations.

Le code ci-dessus vous aidera à extraire les données HTML du lien de recherche Google. Si vous avez obtenu le code d’état 200, cela signifie que la demande a réussi. Ceci termine la première partie de la création d'un scraper pour Google.

Dans la partie suivante, nous utiliserons BeautifulSoup pour extraire les données requises du HTML.

    soup = BeautifulSoup(response.text, ‘html.parser’)

Cela créera un objet BS4 pour analyser la réponse HTML et nous pourrons ainsi naviguer facilement à l'intérieur du HTML et trouver n'importe quel élément de choix et le contenu qu'il contient.

Pour analyser ce code HTML, nous devons d'abord inspecter la page de recherche Google pour vérifier quel modèle commun peut être trouvé à l'emplacement DOM des résultats de recherche.

Scrape Google Search Results Using Python

Ainsi, après inspection, nous avons découvert que chaque résultat de recherche se trouve sous un conteneur div avec la classe g. Cela signifie qu'il nous suffit d'exécuter une boucle sur chaque conteneur div avec la classe g pour obtenir les informations qu'il contient.

Avant d'écrire le code, nous trouverons l'emplacement DOM pour le titre, la description et le lien à partir du HTML.

Si vous inspectez le titre, vous constaterez qu'il est contenu dans une balise h3. À partir de l'image, nous pouvons également voir que le lien se trouve dans l'attribut href de la balise d'ancrage.

Scrape Google Search Results Using Python

Le lien affiché ou le lien de citation se trouve à l'intérieur de la balise de citation.

Scrape Google Search Results Using Python

Et enfin, la description est stockée dans un conteneur div avec la classe VwiC3b.

Scrape Google Search Results Using Python

Encapsuler toutes ces entités de données dans un seul bloc de code :

    touch scraper.py

Nous avons déclaré un tableau de résultats organiques, puis avons parcouru tous les éléments avec la classe g dans le HTML et poussé les données collectées à l'intérieur du tableau.

L'exécution de ce code vous donnera les résultats souhaités que vous pourrez utiliser à diverses fins, notamment le suivi des classements, la génération de leads et l'optimisation du référencement du site Web.

    pip install requests
    pip install beautifulsoup4

C'est ainsi qu'un script Google Scraping de base est créé.

Cependant, il y a un CATCH. Nous ne pouvons toujours pas nous fier entièrement à cette méthode car cela peut entraîner le blocage de notre adresse IP par Google. Si nous voulons extraire les résultats de recherche à grande échelle, nous avons besoin d’un vaste réseau de proxys premium et non premium et de techniques avancées qui rendent cela possible. C'est là que les API SERP entrent en jeu !

Scraper Google à l'aide de l'API SERP d'ApiForSeo

Une autre méthode pour scraper Google consiste à utiliser une API SERP dédiée. Ils sont beaucoup plus fiables et ne vous laissent pas bloquer dans le processus de scraping.

La configuration de cette section serait la même, il suffit de nous inscrire sur ApiForSeo pour obtenir notre clé API qui nous donnera accès à son API SERP.

Obtenir les informations d'identification API d'ApiForSeo

Scrape Google Search Results Using Python

Après avoir activé le compte, vous serez redirigé vers le tableau de bord où vous obtiendrez votre clé API.

Scrape Google Search Results Using Python

Vous pouvez également copier le code depuis le tableau de bord lui-même.

Configuration de notre code pour récupérer les résultats de recherche

Ensuite, nous créerons une requête API sur une requête aléatoire pour récupérer les données via l'API SERP ApiForSeo.

    from bs4 import BeautifulSoup
    import requests

Vous pouvez également essayer n'importe quelle autre requête. N'oubliez pas de mettre votre clé API dans le code sinon vous recevrez une erreur 404.

L'exécution de ce code dans votre terminal vous donnerait immédiatement des résultats.

    touch scraper.py

Les données ci-dessus contiennent divers points, notamment des titres, des liens, des extraits, des descriptions et des extraits en vedette tels que des liens annexes étendus. Vous obtiendrez également des extraits de fonctionnalités avancées telles que les personnes demandent également, le Knowledge Graph, les boîtes de réponse, etc., à partir de cette API.

Conclusion

La nature des affaires évolue à un rythme rapide. Si vous n’avez pas accès aux données sur les tendances en cours et sur vos concurrents, vous risquez de prendre du retard sur les entreprises émergentes qui prennent des décisions stratégiques basées sur les données à chaque étape. Il est donc crucial pour une entreprise de comprendre ce qui se passe dans son environnement, et Google peut être l'une des meilleures sources de données à cet effet.

Dans ce didacticiel, nous avons appris à extraire les résultats de recherche Google à l'aide de Python. Si vous avez trouvé ce blog utile, partagez-le sur les réseaux sociaux et d'autres plateformes.

Merci !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:fmod dans PyTorchArticle suivant:fmod dans PyTorch