Comment extraire des données de Wikipédia à l'aide d'une API ?[3 Easy Ways]


Wikipédia est la plus grande encyclopédie en ligne au monde. 59,7 millions d'articles dans différentes langues et sujets. Toutes les pages sont gratuites, rendant les connaissances plus accessibles. C’est pourquoi les scrapers voient le site comme un «un trésor d'informations

Cependant, extraire manuellement des données de plusieurs pages Wikipédia demande beaucoup de travail. Parcourir de longs articles peut prendre une éternité avant de pouvoir obtenir les informations nécessaires. Heureusement, il existe une solution : Apis.

Découvrir comment extraire des données de Wikipédia à l'aide d'une API dans cet article. Plonger!

???? Points clés à retenir

  • L'API Wikipedia rationalise l'extraction de données, offrant une alternative permettant de gagner du temps aux méthodes manuelles.
  • Python (à partir de la version 3.6) et la bibliothèque Requests sont des outils recommandés pour interagir avec l'API de Wikipédia.
  • Compte tenu du trafic élevé de Wikipédia, l’extraction éthique des données est cruciale. Les utilisateurs doivent limiter les demandes, éviter un trafic excessif et créditer la source de manière appropriée.

Obtenir des données de Wikipédia peut être difficile et fastidieux pour les scrapers en raison du volume important de pages sur le site. C'est pourquoi la plupart d'entre eux automatisent le processus d'extraction des données pour gagner du temps.

La bonne nouvelle est que Wikipédia possède sa propre API pour vous aider dans vos projets d'extraction de données. C'est gratuit et facile à utiliser. Les sections suivantes aborderont les conditions préalables et les étapes à suivre comment utiliser l'API Wikipédia pour extraire des données.

Continuer à lire.

???? Note

L'API est différente du web scraping. Bien que les deux soient des méthodes d’extraction de données, la première collecte les données directement. Pendant ce temps, ce dernier offre un moyen structuré d’accéder à des données spécifiques. Les deux méthodes présentent des avantages distincts en fonction des besoins du projet.

Avant de commencer à extraire Wikipédia à l'aide d'une API, assurez-vous d'avoir les prérequis suivants :

  1. Python- possède des bibliothèques adaptées à l'extraction de données et est compatible avec API Wikipédia. L'utilisation de Python 3.6 et versions ultérieures est fortement recommandée.
  2. PÉPIN – un gestionnaire de packages basé sur Python. Il est responsable de l’installation des packages sur le système local.

    ???? Note: Python à partir de la version 2.7.9 est livré avec un PIP préinstallé.

  3. Bibliothèque de requêtes – une bibliothèque Python responsable des requêtes de type client HTTP.
  4. Éditeur de code ou IDE une application logicielle pour écrire ou développer du code. Vous pouvez utiliser n'importe quel éditeur de code de votre choix.

????Saviez-vous?

Wikipédia en anglais est la plus grande édition de Wikipédia, contenant environ 6,8 millions d'articles. Il publie en moyenne 542 nouveaux articles par jour. Vient ensuite Wikipédia cebuano, qui compte 6,1 millions d'articles.

Voici une illustration du processus général de codage pour l’extraction données de Wikipédia en utilisant Python et le API Wikipédia:

Étapes de codage pour extraire Wikipédia avec une API

Balise Alt: Étapes de codage pour extraire Wikipédia avec une API

Il existe différentes manières de extraire des données de Wikipédia puisque son API comporte de nombreux modules. Le code de chaque méthode dépend des données que vous souhaitez extraire.

Vous trouverez ci-dessous différents guides sur comment extraire des données de Wikipédia à l'aide d'une API Python basé sur trois types de données :

Résumé d'une page Wikipédia

Vous pouvez obtenir l’essentiel de n’importe quelle page Wikipédia en extrayant son abstrait. Un résumé vous donne un aperçu du sujet, de ses points clés et d'autres idées pertinentes. Cela réduit le travail fastidieux de lecture de longs articles.

Vous trouverez ci-dessous les étapes pour extraire le résumé de tout article Wikipédia :

  1. Importez la bibliothèque Requests pour les requêtes HTTP.
  2. Définir le sujet.

    sujet = 'Web scraping'

  3. Appelez le point de terminaison pour accéder à Wikipédia.

    url=”https://en.wikipedia.org/w/api.php”

????️ Note

Pour accéder aux pages Wikipédia et aux autres projets Wikimédia, utilisez «API Wikipédia.phpLe “api.php” bit est une requête que l'API Wikipédia lit et à laquelle elle répond.

A LIRE :  Combien d'employés préfèrent le travail hybride ? [Hybrid Work Statistics]

1. Définissez les paramètres.

paramètres = {

'action' : 'requête',

'format' : 'json',

'titres' : sujet,

'prop' : 'extraits',

'exintro' : vrai,

'texte explicatif' : vrai,

}

2. Lancez une requête HTTP get vers l'API Wikipedia à l'aide des paramètres définis.

réponse = requêtes.get(url, params=params)

3. Définissez les données de réponse au format JSON.

4. Itérez chaque élément de données sur chaque page.

pour la page dans les données[‘query’][‘pages’].valeurs():

5. Affichez les données extraites sur le terminal ou la console. Pour cet exemple, limitez-le à 227 caractères.

imprimer la page[‘extract’][:227])

????️ Remarque

Vous pouvez afficher tout le texte ou les données sur le terminal ou la console. Utilisez le code suivant : imprimer la page[‘extract’])

Code final


Consolidez tous les codes. Vous devriez avoir un code final qui ressemblera à ceci :

demandes d'importation

sujet=”Scraping Web”

url=”https://en.wikipedia.org/w/api.php”

paramètres = {

'action' : 'requête',

'format' : 'json',

'titres' : sujet,

'prop' : 'extraits',

'exintro' : vrai,

'texte explicatif' : vrai,

}

réponse = requêtes.get(url, params=params)

données = réponse.json()

pour la page dans les données[‘query’][‘pages’].valeurs():

imprimer la page[‘extract’][:227])

Voici le résumé gratté en utilisant les codes ci-dessus :

Le scraping Web, la récolte Web ou l'extraction de données Web sont des scrapings de données utilisés pour extraire des données de sites Web. Les logiciels de scraping Web peuvent accéder directement au World Wide Web à l'aide du protocole de transfert hypertexte ou d'un navigateur Web.

Nombre de pages dans les catégories

L'AP Wikipédia vous permet également d'extraire combien de pages y a-t-il dans une catégorie Wikipédia. Connaître le nombre de pages vous permet de calculer la profondeur des informations disponibles sur un sujet particulier.

En outre, cela aide les chercheurs à voir comment les données sont réparties dans différents domaines. Voici comment utiliser l'API Wikipédia pour obtenir le nombre de pages dans une catégorie :

1. Importez la bibliothèque Requêtes.

2. Définissez le sujet.

sujet = 'Web scraping'

3. Appelez le point de terminaison pour accéder à Wikipédia.

url=”https://en.wikipedia.org/w/api.php”

4. Définissez les paramètres.

paramètres = {

'action' : 'requête',

'format' : 'json',

'titres' : f'Catégorie : {sujet}',

'prop' : 'infocatégorie'

}

???? Le saviez-vous ?

Chaînes littérales formatées (ou cordes f) intégrer des expressions Python dans des chaînes littérales. En Python 2, les f-strings n'existent pas et ne sont disponibles que dans Python3.6.

1. Initiez un HTTP obtenir demande au API Wikipédia.

réponse = requêtes.get(url, params=params)

2. Définissez les données de réponse au format JSON.

3. Parcourez toutes les données de chaque page.

pour la page, les pages dans les données[‘query’][‘pages’].articles():

4. Affichez les données extraites sur le terminal ou la console. Si aucune donnée n'est disponible, il renverra “Invalide

essayer:

imprimer(pages[“title”] + ” a ” + str(pages[“categoryinfo”][“pages”]) + “pages.”)

sauf exception :

print(“Invalide”)

Code final

Consolidez tous les codes. Votre code final devrait ressembler à ceci :

demandes d'importation

sujet=”Scraping Web”

url = “https://en.wikipedia.org/w/api.php”

paramètres = {

'action' : 'requête',

'format' : 'json',

'titres' : f'Catégorie : {sujet}',

'prop' : 'infocatégorie'

}

réponse = requêtes.get(url, params=params)

données = réponse.json()

pour la page, les pages dans les données[‘query’][‘pages’].articles():

essayer:

imprimer(pages[“title”] + ” a ” + str(pages[“categoryinfo”][“pages”]) + “pages.”)

sauf exception :

print(“Invalide”)

Les codes produiront un résultat comme celui-ci :

Catégorie : Web scraping compte 31 pages.

Outre le résumé et les pages d'une catégorie, vous pouvez également extraire le Rubriques connexes à partir de n’importe quel article Wikipédia. Connaître les concepts associés vous aidera à mieux comprendre votre sujet principal. Cela vous donnera une meilleure vision de la relation entre votre sujet et d’autres concepts.

A LIRE :  4 conseils pratiques pour générer du trafic vers votre boutique de commerce électronique !

Suivez les étapes ci-dessous pour extraire les sujets associés d'une page Wikipédia :

1. Importez la bibliothèque de requêtes pour les requêtes HTTP.

2. Définissez le sujet.

sujet = 'Web scraping'

3. Appelez le point de terminaison pour accéder à Wikipédia.

url=”https://en.wikipedia.org/w/api.php”

4. Définissez les paramètres pour obtenir les liens pour le sujet défini.

paramètres = {

'action':'requête',

'format' : 'json',

'list':'recherche',

'recherche': sujet

}

5. Initiez un HTTP obtenir demander et définir les données de réponse au format JSON.

réponse = requêtes.get(url, params=params)

données = réponse.json()

6. Répétez chaque titre sur chaque page.

pour les titres dans les données[‘query’][‘pages’]:

7. Affichez les données extraites sur le terminal ou la console.

essayer:

imprimer(titres[‘title’])

sauf exception :

print(“Invalide”)

Code final


Consolidez tous les codes. Vous devriez avoir un code final qui ressemblera à ceci :

demandes d'importation

sujet=”Scraping Web”

url=”https://en.wikipedia.org/w/api.php”

paramètres = {

'action':'requête',

'format' : 'json',

'list':'recherche',

'recherche': sujet

}

réponse = requêtes.get(url, params=params)

données = réponse.json()

pour les titres dans les données[‘query’][‘search’]:

essayer:

imprimer(titres[‘title’])

sauf exception :

print(“Invalide”)

Suivre les codes ci-dessus vous donnera ce résultat :

Scrapage Web

Grattage de données

Robot d'exploration Web

Grattage des contacts

Beautiful Soup (analyseur HTML)

Données alternatives (finance)

HiQ Labs contre LinkedIn

Rayer

Serveur proxy

Liste des outils de tests Web

Compte tenu de la vaste base de données de Wikipédia, les utilisateurs et les scrapers affluent chaque jour sur le site Web. Il souffre d’une congestion quotidienne du réseau, atteignant plus de 25 milliards de pages vues en un mois.

L’extraction de données ajoute au trafic, il est donc important de maintenir une extraction de données éthique. Vous pouvez le faire en surveillant vos activités d’extraction et en mettant en œuvre les meilleures pratiques suivantes :


Limitez vos demandes et soyez prévenant. Récupérez les données à un nombre raisonnable dans une requête contrôlable pour éviter d'être étiqueté comme possible Attaque DDoS. Des demandes excessives peuvent également provoquer une congestion des données et faire fermer un site.


En décembre 2023, Wikipédia a récolté 10,7 milliards de pages vues depuis un ordinateur et 14,6 milliards depuis le mobile. De tels chiffres créent un trafic important. Lors de l'extraction de données, minimisez le trafic en demander plusieurs éléments en une seule demande.


Si vous avez déjà envoyé une demande, soyez suffisamment patient pour terminer la requête précédente avant d'en envoyer une nouvelle.


Minimiser les taux de modification élevés. Assurez-vous également que les modifications sont crédibles et de haute qualité. N'oubliez pas que Wikipédia compte des millions d'utilisateurs actifs. Un nombre effréné de révisions peut entraîner un retard des serveurs.


Lorsque vous extrayez des données de Wikipédia, n’oubliez jamais d’attribuer le crédit là où il est dû. Bien que les données soient gratuites et sans autre exigence, il est préférable de mettre une référence au contenu emprunté.


Pour les applications utilisant les données de Wikipédia, authentifier les demandes à l'aide des informations d'identification du client OAuth 2.0 ou du flux de code d'autorisation. L'authentification fournit une méthode sécurisée pour se connecter à un compte Wikipédia ou Wikimedia.

Conclusion

Wikipédia est l'un des sites les plus visités sur Internet. Il s’agit d’un référentiel massif de connaissances sur différents sujets. C'est pourquoi c'est un site populaire pour l'extraction de données.

L'extraction manuelle des données est fastidieuse et difficile en raison des millions de pages du site Web. Cependant, l'API Wikipédia rend le processus d'extraction de données automatisé et efficace.

Bien que les données Wikipédia soient gratuites et accessibles, la pratique d’une extraction de données éthique reste nécessaire. Évitez d'envoyer plusieurs demandes simultanément et définissez toujours des références pour le contenu.