Les entreprises qui souhaitent garder une longueur d’avance et prendre des décisions plus intelligentes dépendent plus que jamais des données Web. Crawlbase simplifie cette tâche grâce à de puissants outils de web scraping. L'un de ses meilleurs produits, Crawlbase Crawler, vous aide à collecter des données de manière asynchrone sans attendre la réponse. Vous pouvez lui envoyer des URL à l'aide de Crawlbase Crawling API, et au lieu d'attendre ou de vérifier constamment les résultats, le Crawler envoie automatiquement les données récupérées à votre serveur à l'aide d'un webhook, le tout en temps réel. Cela signifie une collecte de données plus rapide avec moins d'efforts.
Dans ce blog, nous examinerons de plus près Crawlbase Crawler et comment son traitement asynchrone et son intégration de webhooks rendent le scraping web à grande échelle fluide et sans tracas. À la fin de ce blog, vous comprendrez comment le configurer et l'utiliser. Crawlbase Crawler de manière efficace.
Voici une vidéo détaillée sur la façon d'utiliser Crawlbase Crawler:
Création du Crawlbase Crawler
Pour utiliser la Crawler, vous devez d'abord le créer à partir de votre Crawlbase Tableau de bord du compte. Selon vos besoins, vous pouvez créer deux types de Crawler, TCP ou JavaScript. Utilisez TCP Crawler pour explorer les pages statiques. Utilisez le JS Crawler lorsque le contenu que vous devez explorer est généré via JavaScript, soit parce qu'il s'agit d'une page créée en JavaScript (React, Angular, etc.), soit parce que le contenu est généré dynamiquement sur le navigateur.
Pour l'exemple, nous allons créer un robot TCP à partir du tableau de bord.

Créer un Crawler, soit nous devons créer un webhook, soit nous pouvons utiliser Crawlbase Cloud Storage. Si vous ne souhaitez pas créer votre propre webhook et stocker vos données Crawler génère en toute sécurité, Crawlbase offre une solution transparente grâce à son Crawlbase Cloud Storage.

En configurant votre Crawler Pour utiliser le point de terminaison webhook de stockage, vous pouvez stocker vos données explorées en toute sécurité, avec une confidentialité et un contrôle accrus, sans vous soucier des limites de stockage. Pour cela, sélectionnez simplement l'option Crawlbase Storage option lors de la création de votre Crawler.
Si vous préférez ne pas utiliser Crawlbase StorageVous pouvez spécifier votre propre point de terminaison webhook pour recevoir directement les données. Les étapes ci-dessous expliquent comment créer un webhook conforme. Crawlbase Crawlerexigences de 's utilisant le Cadre de travail Python Django.
1. Créer un Webhook
A Webhook est un mécanisme de rappel basé sur HTTP qui permet à un système d'envoyer des données en temps réel à un autre lorsqu'un événement spécifique se produit. Dans le cas de Crawlbase Crawler le webhook devrait…
- Être accessible publiquement depuis Crawlbase serveurs
- Soyez prêt à recevoir des appels POST et à répondre dans les 200 ms
- Répondez dans les 200 ms avec un code d'état 200, 201 ou 204 sans contenu
Créons un webhook simple pour recevoir des réponses dans le framework Python Django. Assurez-vous d'avoir Python et Django installé. Pour créer un récepteur de webhook simple à l'aide de Django en Python, suivez ces étapes :
ÉTAPE 1
Créez un nouveau projet et une nouvelle application Django à l’aide des commandes suivantes :
1 | # Commande pour créer le projet : |
ÉTAPE 2
Dans le répertoire webhook_app, créez un fichier views.py et définissez une vue pour recevoir les données du webhook :
1 | # webhook_app/views.py |
webhook_receiver la fonction est décorée de @csrf_exempt pour permettre aux services externes d'envoyer des données sans protection CSRF. Il tente de décompresser les données codées Gzip du corps de la requête et, en cas de succès, les décode (supposées être du HTML) en une chaîne. Les données sont ensuite ajoutées à un fichier nommé webhook_data.txt.
Bien que cet exemple simplifie les choses en enregistrant le code HTML récupéré dans un seul fichier, en pratique, vous pouvez extraire et traiter tout type de données du code HTML reçu via le webhook selon vos besoins.
ÉTAPE 3
Configurer le routage d'URL Dans le répertoire webhook_project, modifiez le fichier urls.py pour ajouter un modèle d'URL pour le récepteur webhook :
1 | # webhook_project/urls.py |
ÉTAPE 4
Démarrez le serveur de développement Django pour tester le récepteur webhook :
1 | # Commande pour démarrer le serveur |
L'application commencera à s'exécuter sur le port localhost 8000.

Après avoir créé un webhook, la prochaine chose dont nous avons besoin est de rendre le webhook accessible au public sur Internet.
Pour ce faire, pour cet exemple, nous utilisons ngrokÉtant donné que notre webhook s'exécute sur localhost avec le port 8000, nous devons exécuter ngrok sur le port 8000.

Après avoir exécuté ngrok sur le port 8000, nous pouvons voir que ngrok fournit une URL de transfert publique que nous pouvons utiliser pour créer le crawler. Avec la version gratuite de ngrok, ce lien expirera automatiquement après 2 heures.
La création Crawlbase Crawler avec Webhook
Maintenant, créons un robot d'exploration à partir de tableau de bord.

Commencez par donner votre Crawler un nom unique, comme « test-crawler » dans notre cas, et spécifiez l'URL de votre webhook dans l'option de rappel. Dans cet exemple, l'URL du webhook sera une URL de transfert Ngrok publique, suivie de l'adresse de la route du webhook.
Pousser les URL vers le Crawler
Maintenant que vous avez créé le robot d'exploration de test, l'étape suivante consiste à envoyer les URL que vous souhaitez explorer. Pour ce faire, utilisez l'outil Crawlbase Crawling API, ainsi que deux paramètres supplémentaires : crawler=YourCrawlerName et callback=true. Par défaut, vous pouvez envoyer jusqu'à 30 URL par seconde au Crawler. Si vous devez augmenter cette limite, vous pouvez demander une modification en contactant Crawlbase client réactif.
Voici un exemple en Python qui utilise le Crawlbase Librairie Python pour pousser les URL vers le Crawler.
1 | # Pour installer la bibliothèque crawlbase |
Après avoir exécuté le code, le Crawling API poussera toutes les URL vers le Crawler file d'attente.
Exemple de sortie :
1 | b'{"rid":"d756c32b0999b1c0507e364f"}' |
Pour chaque URL que vous envoyez vers le Crawler en utilisant la fonction Crawling API, vous recevrez un RID (ID de demande). Vous pouvez utiliser ce RID pour suivre votre demande. Une fois le Crawler traite les données HTML, elles seront automatiquement poussées vers le webhook que vous avez spécifié lors de la création du Crawler, en gardant le processus asynchrone.
Crawler propose des API qui vous permettent d'effectuer différentes actions, telles que Rechercher, Supprimer, Mettre en pause, Reprendre, etc. Vous pouvez en savoir plus à leur sujet ici.
Remarque: Le nombre total de pages dans tous Crawler les files d'attente sont plafonnées à 1 million. Si les files d'attente combinées dépassent cette limite, votre Crawler Le push sera temporairement suspendu et vous serez averti par e-mail. Le push reprendra automatiquement une fois que le nombre de pages dans la file d'attente sera inférieur à 1 million.
Réception des données du Crawler
Après avoir poussé les URL vers le Crawler, Crawler explorera la page associée à chaque URL et enverra la réponse avec le HTML exploré comme corps au webhook.
1 | En-têtes: |
Le format par défaut de la réponse est HTML. Si vous souhaitez recevoir une réponse au format JSON, vous pouvez passer un paramètre de requête « format=json » avec Crawling API tout en poussant les données vers le Crawler. La réponse JSON ressemblera à ceci
1 | En-têtes: |
Étant donné que nous n'avons envoyé que 3 URL à la Crawler dans l'exemple précédent, nous avons reçu 3 demandes de la part du Crawler sur notre webhook.

Comme dans le webhook_receiver fonction, nous avons codé pour enregistrer le corps de la requête dans un .txt fichier. Nous pourrons voir tout le contenu HTML de ce fichier comme ceci.

Une fois que vous avez obtenu le code HTML de votre webhook, vous pouvez en extraire n'importe quoi, en fonction de vos besoins.
Remarque importante : vous pouvez mettre à jour l'URL du Webhook pour votre Crawler à tout moment via votre Crawlbase tableau de bord. Si le Crawler envoie une réponse à votre webhook mais votre serveur ne renvoie pas de réponse réussie, le Crawler réessayera automatiquement d'explorer la page et de la livrer à nouveau. Ces tentatives sont comptabilisées comme des requêtes réussies et seront facturées. De plus, si votre webhook tombe en panne, Crawlbase Bot de surveillance le détectera et mettra en pause le CrawlerL’ Crawler reprendra une fois que le webhook sera de nouveau en ligne. Pour toute modification de ces paramètres, vous pouvez contacter Crawlbase support technique..
Pour une compréhension plus complète, reportez-vous à Crawlbase Crawler Documentation.
Fonctionnalité de rappel améliorée avec des en-têtes personnalisés
En plus du mécanisme de rappel standard, Crawlbase Fournit une fonctionnalité optionnelle permettant de recevoir des en-têtes personnalisés via le paramètre « callback_headers ». Cette amélioration vous permet de transmettre des données supplémentaires à des fins d'identification, facilitant ainsi une intégration plus personnalisée et plus efficace avec vos systèmes.
Format d'en-tête personnalisé :
Le format des en-têtes personnalisés est le suivant :
HEADER-NAME:VALUE|HEADER-NAME2:VALUE2|and-so-on
Il est essentiel de garantir un codage approprié pour un transfert et une interprétation des données transparents.
Exemple d'utilisation
Pour ces paires d'en-têtes et de valeurs { ”id”: 123, type: “etc” }
&callback_headers=id%3A123%7Ctype%3Aetc
Réception des en-têtes des clients
Crawler enverra tous les en-têtes personnalisés dans la section d'en-tête de la réponse. Vous pouvez facilement y accéder avec vos données explorées.
1 | En-têtes: |
Grâce à cette mise à niveau, vous bénéficiez désormais d'une plus grande flexibilité et d'un meilleur contrôle sur les informations que vous recevez via les rappels. En exploitant des en-têtes personnalisés, vous pouvez adapter les données de rappel à vos besoins spécifiques, ce qui rend l'alignement de nos services sur vos besoins uniques plus facile que jamais.
Conclusion
Crawlbase Crawler Offre une solution robuste et efficace pour l'exploration web et le scraping de données. Grâce à ses puissantes fonctionnalités asynchrones, Crawlbase aide les entreprises à collecter rapidement de grandes quantités de données, à recevoir des mises à jour en temps réel et à gérer le processus d'extraction des données en douceur. Crawlbase Crawler est un outil populaire pour les entreprises qui ont besoin de récupérer de grandes quantités de données, les aidant à garder une longueur d'avance dans le monde numérique en évolution rapide d'aujourd'hui.
Cela dit, tout en Crawlbase Crawler est un outil puissant, il est essentiel de l'utiliser de manière responsable. Veillez toujours à respecter les conditions d'utilisation du site Web, à suivre les pratiques de scraping éthiques et à respecter les directives d'extraction responsable des données. Ce faisant, nous pouvons tous contribuer à un écosystème Web sain et durable. Tirons le meilleur parti du Web, de manière responsable et efficace.
Foire aux questions (FAQ)
Q : Quels sont les avantages d'utiliser le Crawlbase Crawler?
- Efficacité: Les CrawlerLes capacités asynchrones de permettent une extraction plus rapide des données à partir de sites Web, économisant ainsi un temps et des ressources précieux.
- Simplicité d’utilisation:Avec sa conception conviviale, le Crawler simplifie le processus de transmission d'URL et de réception de données explorées via des webhooks.
- Évolutivité: Les Crawler peut gérer efficacement de grands volumes de données, ce qui le rend idéal pour extraire de vastes sites Web et traiter des ensembles de données substantiels.
- Mises à jour en temps réel:En définissant la variable de temps de défilement, vous pouvez contrôler le moment où le Crawler renvoie le site Web récupéré, offrant un accès en temps réel aux données les plus récentes.
- Prise de décision basée sur les données: Les Crawler fournit aux utilisateurs des informations précieuses à partir des données Web, facilitant ainsi la prise de décision basée sur les données et l'avantage concurrentiel.
Q: Comment Crawlbase Crawler rendre le scraping Web asynchrone ?
Crawlbase Crawler rend le scraping Web asynchrone en permettant aux utilisateurs de pousser les URL vers le Crawler et continuez à travailler sans attendre la fin du processus de scraping. Lorsque vous soumettez des URL, le Crawler les ajoute à une file d'attente et les traite en arrière-plan. Il renvoie un ID de demande (rid) au lieu des données extraites, afin que vous puissiez suivre la progression pendant que le Crawler fonctionne. Une fois les données prêtes, elles sont automatiquement transmises à votre webhook spécifié, ce qui vous permet de recevoir les résultats sans avoir à attendre la fin du scraping. Cette approche asynchrone accélère le processus et améliore l'efficacité.
Q : Dois-je utiliser Python pour utiliser le Crawlbase Crawler?
Non, vous n'avez pas besoin d'utiliser exclusivement Python pour utiliser le Crawlbase CrawlerL’ Crawler propose plusieurs bibliothèques pour différents langages de programmation, permettant aux utilisateurs d'interagir avec eux dans leur langage préféré. Que vous soyez à l'aise avec Python, JavaScript, Java, Ruby ou d'autres langages de programmation, Crawlbase vous couvre. De plus, Crawlbase propose des API qui permettent aux utilisateurs d'accéder à CrawlerLes fonctionnalités de s sans s'appuyer sur des bibliothèques spécifiques, le rendant accessible à un large éventail de développeurs ayant des préférences linguistiques et des antécédents techniques différents. Cette flexibilité garantit que vous pouvez intégrer de manière transparente le Crawler dans vos projets et flux de travail en utilisant le langage qui correspond le mieux à vos besoins.










