Maison développement back-end Tutoriel Python Récupération de données avec DevTools et fichiers HAR

Récupération de données avec DevTools et fichiers HAR

Dec 31, 2024 am 08:16 AM

Le data scraping change la donne pour tous ceux qui cherchent à extraire des informations significatives à partir de sites Web. Avec des outils tels que Chrome DevTools et les fichiers HAR, vous pouvez découvrir des API cachées et capturer des flux de données précieux sans effort. Dans cet article, je vais partager comment j'ai utilisé ces outils pour extraire les données produit de Blinkit, une plateforme de livraison d'épicerie, et vous montrer comment vous pouvez le faire également.

Pourquoi j'ai choisi le Data Scraping pour mon application d'épicerie

Lors de la création d'une application de livraison de courses, j'ai été confronté à un défi majeur : le manque de données réelles. Créer mon propre ensemble de données à partir de zéro aurait pris beaucoup de temps et n'aurait apporté aucun réel avantage au projet. J'avais besoin d'une solution plus rapide et plus pratique, ce qui m'a amené à l'idée de récupérer des données. En extrayant les détails du produit de Blinkit, j'ai pu obtenir des données précises et réelles pour tester et affiner mon application sans gaspiller de ressources.

Méthodes courantes pour récupérer des données sur le Web

  1. Copier-Coller manuel

    • Simple mais fastidieux. Convient pour extraire de petites quantités de données.
  2. Outils de scraping Web

    • Des outils comme Scrapy, BeautifulSoup ou Puppeteer automatisent le processus d'extraction de données à partir de sites Web.
    • Idéal pour l'extraction de données structurées à plus grande échelle.
  3. Intégration API

    • Certains sites Web proposent des API publiques pour accéder à leurs données directement et légalement.
    • Nécessite une connaissance des points de terminaison de l'API et des processus d'authentification.
  4. Outils de développement du navigateur

    • Inspectez les requêtes réseau, capturez des fichiers HAR ou analysez les éléments de la page directement dans le navigateur.
    • Idéal pour identifier les API cachées ou les données JSON.
  5. Navigateurs sans tête

    • Utilisez des bibliothèques de navigateur sans tête comme Puppeteer ou Selenium pour automatiser la navigation et le scraping.
    • Idéal pour les sites nécessitant un rendu ou une interaction JavaScript.
  6. Analyse des fichiers HAR

    • Les fichiers HAR capturent toute l'activité réseau d'une page Web. Ils peuvent être analysés pour extraire des API, des réponses JSON ou d'autres données.
    • Utile pour les sites avec du contenu dynamique ou des données cachées.
  7. Analyse HTML

    • Extrayez des données en analysant le contenu HTML à l'aide de bibliothèques comme BeautifulSoup (Python) ou Cheerio (Node.js).
    • Efficace pour les sites Web simples et statiques.
  8. Extraction de données à partir de PDF ou d'images

    • Des outils tels que PyPDF2, Tesseract (OCR) ou les API Adobe permettent d'extraire le texte des fichiers lorsque les données ne sont pas disponibles en ligne.
  9. Scripts automatisés

    • Scripts personnalisés écrits en Python, Node.js ou des langages similaires pour récupérer, analyser et stocker des données.
    • Offre un contrôle complet sur le processus de grattage.
  10. API tierces

    • Utilisez des services tels que DataMiner, Octoparse ou Scrapy Cloud pour gérer les tâches de scraping à votre place.
    • Gain de temps mais peut avoir des limites en fonction des plans de service.

J'ai choisi l'analyse de fichiers HAR

Qu'est-ce qu'un fichier HAR ?

Scraping Data with DevTools and HAR Files

Un fichier HAR (HTTP Archive) est un fichier d'archive au format JSON qui enregistre l'activité réseau d'une page Web. Il contient des informations détaillées sur chaque requête et réponse HTTP, notamment les en-têtes, les paramètres de requête, les charges utiles et les délais. Les fichiers HAR sont souvent utilisés pour le débogage, l'analyse des performances et, dans ce cas, le grattage de données.

Structure d'un fichier HAR

Un fichier HAR se compose de plusieurs sections, les principales étant :

Scraping Data with DevTools and HAR Files

  1. Journal

    • L'objet racine d'un fichier HAR, contenant des métadonnées sur la session enregistrée et les entrées capturées.
  2. Entrées

    • Un tableau d'objets où chaque entrée représente une requête HTTP individuelle et sa réponse correspondante.

Les propriétés clés incluent :

  • request : détails sur la requête, tels que l'URL, les en-têtes, la méthode et les paramètres de requête.
  • réponse : informations sur la réponse, y compris le code d'état, les en-têtes et le contenu.
  • timings : la répartition du temps passé pendant le cycle requête-réponse (par exemple, DNS, connexion, attente, réception).
  1. Pages

    • Contient des données sur les pages Web chargées pendant la session, telles que le titre de la page, l'heure de chargement et l'horodatage de l'ouverture de la page.
  2. Créateur

    • Métadonnées sur l'outil ou le navigateur utilisé pour générer le fichier HAR, y compris son nom et sa version.

Pourquoi j'ai choisi l'analyse de fichiers HAR

Les fichiers HAR fournissent un instantané complet de toutes les activités réseau sur une page Web. Cela les rend parfaits pour identifier les API cachées, capturer les charges utiles JSON et extraire les données exactes requises pour le scraping. Le format JSON structuré simplifie également le processus d'analyse à l'aide d'outils tels que les bibliothèques Python ou JavaScript.

Le plan : récupérer des données à l'aide de l'analyse de fichiers HAR

Scraping Data with DevTools and HAR Files

Pour extraire efficacement les données produit de Blinkit, j'ai suivi un plan structuré :

  1. Parcourir et capturer l'activité du réseau
    • J'ai ouvert le site de Blinkit et lancé Chrome DevTools.
    • Parcouru diverses pages de produits pour capturer tous les appels API nécessaires dans l'onglet Réseau.

Scraping Data with DevTools and HAR Files

  1. Exportation du fichier HAR

    • Enregistré l'activité réseau enregistrée sous forme de fichier HAR pour une analyse hors ligne.
  2. Analyse du fichier HAR

    • Utilisation de Python pour analyser le fichier HAR et extraire les données pertinentes.
    • Création de trois fonctions clés pour rationaliser le processus :
  • Fonction 1 : Filtrer les réponses pertinentes
    • Extrait toutes les réponses correspondant au point de terminaison /listing?catId=* pour obtenir des données relatives au produit.

Scraping Data with DevTools and HAR Files

  • Fonction 2 : Nettoyer et extraire les données
    • Traitement des réponses filtrées pour extraire les champs clés tels que l'identifiant, le nom, la catégorie, etc.

Scraping Data with DevTools and HAR Files

  • Fonction 3 : Enregistrer les images localement
    • Identifié toutes les URL d'images de produits dans les données et téléchargées dans des fichiers locaux pour référence.

Scraping Data with DevTools and HAR Files

  1. Exécution et résultats
    • L'ensemble du processus, y compris quelques essais et erreurs, a pris environ 30 à 40 minutes.
    • Récupération réussie des données d'environ 600 produits, y compris les noms, les catégories et les images.

Scraping Data with DevTools and HAR Files

Cette approche m'a permis de rassembler les données nécessaires à mon application de livraison d'épicerie rapidement et efficacement.

Conclusion

Le data scraping, lorsqu'il est effectué efficacement, peut vous faire gagner beaucoup de temps et d'efforts, en particulier lorsque vous avez besoin de données réelles pour tester ou créer une application. En tirant parti de Chrome DevTools et des fichiers HAR, j'ai pu extraire rapidement des données produit précieuses de Blinkit sans créer manuellement un ensemble de données. Le processus, bien que nécessitant quelques essais et erreurs, était simple et offrait une solution pratique à un problème courant rencontré par les développeurs. Avec cette méthode, j'ai pu rassembler 600 détails sur les produits en moins d'une heure, ce qui m'a aidé à avancer dans mon projet d'application de livraison de courses.

Le grattage de données, cependant, doit toujours être abordé de manière éthique et responsable. Assurez-vous toujours de respecter les conditions d’utilisation et les directives légales d’un site Web avant de le supprimer. S'il est bien fait, le scraping peut être un outil puissant pour collecter des données et améliorer vos projets.

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 de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Commandes de chat et comment les utiliser
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment résoudre le problème des autorisations rencontré lors de la visualisation de la version Python dans le terminal Linux? Comment résoudre le problème des autorisations rencontré lors de la visualisation de la version Python dans le terminal Linux? Apr 01, 2025 pm 05:09 PM

Solution aux problèmes d'autorisation Lors de la visualisation de la version Python dans Linux Terminal Lorsque vous essayez d'afficher la version Python dans Linux Terminal, entrez Python ...

Comment copier efficacement la colonne entière d'une dataframe dans une autre dataframe avec différentes structures dans Python? Comment copier efficacement la colonne entière d'une dataframe dans une autre dataframe avec différentes structures dans Python? Apr 01, 2025 pm 11:15 PM

Lorsque vous utilisez la bibliothèque Pandas de Python, comment copier des colonnes entières entre deux frames de données avec différentes structures est un problème courant. Supposons que nous ayons deux dats ...

Comment enseigner les bases de la programmation novice en informatique dans le projet et les méthodes axées sur les problèmes dans les 10 heures? Comment enseigner les bases de la programmation novice en informatique dans le projet et les méthodes axées sur les problèmes dans les 10 heures? Apr 02, 2025 am 07:18 AM

Comment enseigner les bases de la programmation novice en informatique dans les 10 heures? Si vous n'avez que 10 heures pour enseigner à l'informatique novice des connaissances en programmation, que choisissez-vous d'enseigner ...

Comment éviter d'être détecté par le navigateur lors de l'utilisation de Fiddler partout pour la lecture de l'homme au milieu? Comment éviter d'être détecté par le navigateur lors de l'utilisation de Fiddler partout pour la lecture de l'homme au milieu? Apr 02, 2025 am 07:15 AM

Comment éviter d'être détecté lors de l'utilisation de FiddlereVerywhere pour les lectures d'homme dans le milieu lorsque vous utilisez FiddlereVerywhere ...

Que sont les expressions régulières? Que sont les expressions régulières? Mar 20, 2025 pm 06:25 PM

Les expressions régulières sont des outils puissants pour la correspondance des motifs et la manipulation du texte dans la programmation, améliorant l'efficacité du traitement de texte sur diverses applications.

Quelles sont les bibliothèques Python populaires et leurs utilisations? Quelles sont les bibliothèques Python populaires et leurs utilisations? Mar 21, 2025 pm 06:46 PM

L'article traite des bibliothèques Python populaires comme Numpy, Pandas, Matplotlib, Scikit-Learn, Tensorflow, Django, Flask et Demandes, détaillant leurs utilisations dans le calcul scientifique, l'analyse des données, la visualisation, l'apprentissage automatique, le développement Web et H et H

Comment Uvicorn écoute-t-il en permanence les demandes HTTP sans servir_forever ()? Comment Uvicorn écoute-t-il en permanence les demandes HTTP sans servir_forever ()? Apr 01, 2025 pm 10:51 PM

Comment Uvicorn écoute-t-il en permanence les demandes HTTP? Uvicorn est un serveur Web léger basé sur ASGI. L'une de ses fonctions principales est d'écouter les demandes HTTP et de procéder ...

Comment créer dynamiquement un objet via une chaîne et appeler ses méthodes dans Python? Comment créer dynamiquement un objet via une chaîne et appeler ses méthodes dans Python? Apr 01, 2025 pm 11:18 PM

Dans Python, comment créer dynamiquement un objet via une chaîne et appeler ses méthodes? Il s'agit d'une exigence de programmation courante, surtout si elle doit être configurée ou exécutée ...

See all articles