Défilé interminable fonctionne en récupérant et en restituant de nouvelles données à chaque fois que l'utilisateur fait défiler une page vers le bas. Si vous recherchez un moyen simple d'explorer une page Web avec un contenu continu ou long qui nécessite un défilement, comme des groupes Facebook, des tweets Twitter ou même des résultats de recherche dans Quora, ce guide peut vous aider à économiser votre temps et vos efforts précieux.

Dans cet article, nous vous montrerons comment créer un robot d'exploration Web simple qui fait défiler automatiquement une page Web à l'aide de notre Crawling API avec le paramètre scroll. Nous allons écrire notre code en Node.js et le rendre aussi convivial que possible pour les débutants. De plus, nous partagerons 8 tactiques avancées d'exploration Web pour la récupération de données Web qui fonctionnent vraiment.

Avant de commencer à coder, il est important de connaître les 3 éléments clés pour que cela fonctionne :

  • Jeton Javascript:Il s'agit d'un jeton qui vous est fourni lors de votre inscription sur Crawlbase et il est nécessaire de passer les paramètres ci-dessous.
  • &paramètre de défilement:Transmettre ceci à l'API permettra à votre requête de faire défiler la page avec un intervalle de 10 secondes.
  • &scroll_interval: Ce paramètre permet à l'API de défiler pendant X secondes après le chargement de la page. L'intervalle de défilement maximal est de 60 secondes, après 60 secondes de défilement, l'API capture les données et vous les renvoie.

Faire défiler un site Web avec Node

Pour commencer, ouvrez votre invite de commande (Windows) ou votre terminal et vérifiez si Node.js est installé sur votre système en tapant node --version et si vous n'avez pas encore Node ou s'il est déjà obsolète, nous vous recommandons de télécharger et d'installer le dernière version de NodeJS d'abord.

Une fois que vous avez installé/mis à jour votre nœud avec succès, continuez et créez un dossier comme indiqué ci-dessous :

Créer un projet de nœud

Dans ce cas, nous utiliserons Visual Studio Code comme exemple, mais vous pouvez également utiliser votre éditeur de code préféré.

Créez un nouveau fichier et vous pouvez le nommer quoraScraper.js

Création de nœuds VSCode

Nous pouvons maintenant commencer à écrire notre code. Tout d'abord, nous pouvons déclarer nos variables constantes afin de pouvoir appeler correctement le Crawling API avec les paramètres nécessaires comme indiqué ci-dessous :

1
2
3
4
5
6
const https = exigent('https');
const URL = encodeURIComponent('https://www.quora.com/search?q=crawlbase');
const choix = {
nom d'hôte: 'api.crawlbase.com',
chemin: '/?token=JS_TOKEN&scraper=quora-serp&scroll=true&url=' + URL,
};

N'oubliez pas que vous pouvez échanger l'URL avec n'importe quelle URL que vous souhaitez récupérer et qui devrait avoir le &paramètre scraper et le JS_TOKEN avec votre réel jeton javascript.

La partie suivante de notre code récupérera la requête au format JSON et affichera les résultats dans la console :

1
2
3
4
5
6
7
8
9
10
11
12
https
.demandez(options, (RAPIDE) => {
laisser corps = '';
RAPIDE
.on('Les données', (gros morceau) => (corps += morceau))
.on('fin', () => {
const json = JSON.analyser(corps);
console.enregistrer(json.statut_original);
console.enregistrer(json.corps);
});
})
.fin();

Une fois terminé, appuyez sur F5 (Windows) pour voir le résultat ou vous pouvez également l'exécuter à partir du terminal ou de l'invite de commande :

1
C:\Nodejs\project> nœud quoraScraper.js

Étant donné que nous n'avons pas encore défini l'intervalle de défilement, la valeur par défaut est de 10 secondes de défilement, ce qui renvoie naturellement moins de données.

Récupérer plus de données avec le nœud

Maintenant, si vous souhaitez faire défiler davantage (c'est-à-dire 20 secondes), vous devez définir une valeur sur le &scroll_interval paramètre. Le code complet est présenté ci-dessous :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
const https = exigent('https');
const URL = encodeURIComponent('https://www.quora.com/search?q=crawlbase');
const choix = {
nom d'hôte: 'api.crawlbase.com',
chemin: '/?token=JS_TOKEN&scraper=quora-serp&scroll=true&scroll_interval=20&url=' + URL,
};

https
.demandez(options, (RAPIDE) => {
laisser corps = '';
RAPIDE
.on('Les données', (gros morceau) => (corps += morceau))
.on('fin', () => {
const json = JSON.analyser(corps);
console.enregistrer(json.statut_original);
console.enregistrer(json.corps);
});
})
.fin();

Assurez-vous de garder votre connexion ouverte pendant 90 secondes maximum si vous avez l'intention de faire défiler la page pendant 60 secondes. Vous trouverez plus d'informations sur le paramètre de défilement dans notre Documentation.

Si vous exécutez à nouveau le code, vous devriez obtenir plus de données comme indiqué dans l'exemple ci-dessous :

Sortie JSON

À ce stade, nous avons réussi à créer un scraper simple qui peut faire défiler une page Web en moins de 20 lignes de code. N'oubliez pas que cela peut être intégré si vous disposez déjà d'un scraper Web et que vous êtes également libre d'utiliser notre Crawlbase Bibliothèque Nodejs comme alternative.

Bien sûr, ce n’est que le début, il y a beaucoup de choses que vous pouvez faire avec cela et nous espérons que cela aura ajouté de la valeur à vos connaissances en matière de scraping Web.

Qu'est-ce que l'exploration Web?

Exploration Web Il s'agit de récupérer des informations précieuses sur des sites Web sans avoir à cliquer et copier manuellement. Pour être un peu plus technique, l'exploration Web consiste à utiliser des outils ou des programmes spéciaux pour extraire automatiquement des données des pages Web. C'est comme un robot qui visite une page Web, télécharge tout ce qu'elle contient, puis sélectionne les informations spécifiques qui vous intéressent.

Que peut faire le Web Crawling faire pour vous ?

Vous vous demandez peut-être pourquoi l'exploration Web est un outil si précieux. Eh bien, voici l'affaire : le scraping Web est votre grande aide pour gagner du temps. Il vous aide à récupérer automatiquement les données Web de toutes sortes d'informations publiques à partir du vaste Web. C'est comme un raccourci qui bat la copie manuelle à tout moment.

Mais ce n'est pas tout ! Le Web scraping est une astuce pratique pour diverses tâches, telles que :

Analyse de la concurrence: Avec grattage web, vous pouvez jeter un œil aux sites Web de vos concurrents et garder un œil sur leurs services, leurs prix et leurs tactiques marketing. Cela ressemble à un laissez-passer pour leurs stratégies commerciales.
Étude de marché: Supposons que vous souhaitiez tout savoir sur un marché, un secteur ou une niche spécifique. Le scraping Web peut vous fournir toutes les données utiles. C'est très utile, en particulier dans des domaines comme l'immobilier.
Apprentissage automatique C'est là que le Web scraping devient encore plus intéressant. Les données que vous récupérez peuvent devenir la base de vos projets d'apprentissage automatique et d'IA. C'est comme renforcer vos algorithmes avec les informations dont vous avez besoin pour apprendre et évoluer.

Prêt à plonger dans le monde du web crawling ? Nous partagerons avec vous quelques bonnes pratiques de web scraping de premier ordre pour vous assurer d'être sur la bonne voie. Commençons !

8 meilleurs sites Web avancés Crawling Tactiques pour vous

Il est maintenant temps de découvrir les dix pratiques les plus importantes et les plus efficaces pour la récupération de données Web. Que vous ayez affaire à un site Web à défilement, à un site Web à défilement infini ou que vous configuriez un robot d'exploration en direct, ces conseils de récupération de données et ces tactiques d'exploration vous seront utiles dans vos activités de récupération de données Web.

Alors, préparons-nous à apprendre les meilleures pratiques pour une récupération de données Web efficace et efficiente !

1. Soyez patient : ne surchargez pas

Il est essentiel de bien gérer les serveurs avec lesquels vous interagissez. En effet, bombarder un serveur de trop nombreuses requêtes sur une courte période peut entraîner des problèmes. Le site Web que vous ciblez n'est peut-être pas prêt à gérer une charge aussi importante, et c'est là que des problèmes peuvent survenir.

Pour éviter cela, il est essentiel d'introduire un temps de pause entre chaque requête de votre robot d'exploration Web. Ce temps de respiration permet à votre robot d'exploration de naviguer sur les pages Web avec élégance sans perturber les autres utilisateurs. Après tout, personne ne veut d'un site Web lent, n'est-ce pas ?

De plus, le lancement d'une avalanche de requêtes peut déclencher des défenses anti-scraping. Ces systèmes sournois peuvent détecter une activité excessive et peuvent refuser l'accès à votre scraper Web.

En guise de conseil supplémentaire, pensez à exécuter votre robot d'exploration en dehors des heures de pointe. Par exemple, le trafic Web sur le site Web cible a tendance à diminuer la nuit. C'est l'une des règles d'or des meilleures pratiques de scraping Web, garantissant une expérience plus fluide pour tous.

2. La puissance des API publiques

Voici une astuce pour un processus de récupération de données Web fluide : optez pour des API publiques. Si vous n'êtes pas familier avec ce terme, API signifie Application Programming Interface (interface de programmation d'application). Il s'agit d'une sorte de connexion qui permet à différentes applications de communiquer entre elles et de partager des données.

Désormais, de nombreux sites Web s’appuient sur ces API pour récupérer les données dont ils ont besoin pour leurs pages Web.

Alors, comment cela vous aide-t-il dans vos activités de scraping Web ? Eh bien, si le site Web que vous envisagez fonctionne de cette manière, vous avez de la chance. Vous pouvez effectuer ces appels API directement dans les outils de développement de votre navigateur, sous l'onglet XHR de la section Réseau.

En interceptant ces requêtes HTTP, vous accédez aux données que vous recherchez. De plus, la plupart des API sont conviviales et vous permettent de spécifier les données que vous souhaitez à l'aide de paramètres de corps ou de requête. Vous obtenez exactement ce que vous voulez et dans un format facile à comprendre pour les humains. De plus, ces API peuvent même fournir des URL et d'autres informations précieuses pour vos projets d'exploration Web.

Alors, la prochaine fois que vous récupérerez vos données Web, n'oubliez pas de vérifier s'il existe une API publique qui vous permettra de vous simplifier la vie.

3. Cachez votre adresse IP avec des services proxy

Voici la règle de base pour une récupération réussie des données Web : ne jamais révéler votre véritable adresse IP lors du scraping. C'est l'une des meilleures pratiques fondamentales du scraping Web. La raison est simple : vous ne voulez pas que les systèmes anti-scraping identifient votre véritable adresse IP et vous bloquent.

Alors, comment rester incognito ? Voici une réponse en deux mots : les services proxy. Lorsque votre scraper envoie une requête à un site Web, l'adresse IP du serveur proxy apparaît dans les journaux du serveur, pas la vôtre.

Le plus intéressant est que les services proxy premium proposent souvent une rotation IP. Cela signifie que votre scraper peut constamment basculer entre différentes adresses IP. Il est donc extrêmement difficile pour les sites Web de bannir votre adresse IP, car il s'agit d'une cible mouvante.

Alors, n'oubliez pas, lorsque vous récupérez des données sur le Web, que les services proxy sont votre principale exigence. Ils vous aident à récupérer des données sans révéler votre véritable identité.

4. Introduisez du hasard dans votre Crawling Patron de Couture

Un modèle d'exploration aléatoire est l'une des meilleures tactiques d'exploration pour récupérer des données en toute sécurité et vous protéger des technologies anti-scraping. Certains sites Web utilisent des techniques anti-scraping avancées qui analysent le comportement des utilisateurs pour faire la distinction entre les humains et les robots. Ils recherchent des modèles, et voici la vérité : les humains sont connus pour leur imprévisibilité.

Pour déjouer ces sites Web vigilants anti-scraping, vous devez faire en sorte que votre scraper Web se comporte comme un utilisateur humain. Comment faire ? En introduisant une touche d'aléatoire dans votre logique de scraping Web.

Voici quelques gestes astucieux :

Décalage aléatoire : Lorsque votre grattoir défile ou clique, ajoutez-y un peu de hasard. Les humains ne se déplacent pas avec une précision robotique, et votre grattoir ne devrait pas non plus.
Mouvements de la souris : Imitez le mouvement organique d'un curseur humain. Quelques mouvements ici et là peuvent vous aider à vous fondre dans le décor.
Cliquez sur des liens aléatoires : Les humains sont des créatures curieuses et cliquent sur différents liens. Encouragez votre scraper à faire de même.

En procédant ainsi, votre scraper Web apparaîtra plus humain aux yeux des technologies anti-scraping. Donnez à votre scraper une personnalité virtuelle, ce qui le rendra moins susceptible d'éveiller les soupçons.

5. Soyez attentif aux pots de miel

Certains sites Web utilisent des astuces astucieuses pour entraver vos activités de scraping : les pots de miel.

Les pièges à miel sont des liens cachés placés stratégiquement là où les utilisateurs sans méfiance ne peuvent pas les voir. Ils ressemblent à des chemins auxquels seuls les initiés peuvent accéder. Ces liens sont souvent masqués avec du CSS, en définissant leur propriété d'affichage sur « none », ce qui les rend invisibles pour l'utilisateur moyen.

Lorsque votre scraper Web pénètre dans un site Web honeypot, il peut tomber involontairement dans un piège anti-scraping. Le système anti-scraper surveille chacun de vos mouvements et prend des notes sur votre comportement. Il recueille toujours des preuves pour identifier et bloquer votre scraper.

Pour éviter les sites Web de type honeypot, vérifiez toujours que le site Web ciblé par votre scraper est authentique. Ne vous laissez pas séduire par la promesse de fausses données.

De plus, les systèmes anti-bots surveillent également de près les adresses IP qui ont interagi avec des liens honeypot. Si votre adresse IP entre dans cette catégorie, cela peut déclencher un signal d'alarme et vos efforts de scraping pourraient être bloqués.

6. Mettez toujours en cache et enregistrez comme un pro

Nous savons que vous collectez des données Web précieuses et que vous souhaitez le faire efficacement. L'un des meilleurs conseils pour récupérer des données est la mise en cache.

Voici comment cela fonctionne : chaque fois que votre scraper effectue une requête HTTP et reçoit une réponse, vous la stockez dans une base de données ou un fichier journal. Ces données brutes sont trop précieuses pour vous. Pourquoi, demandez-vous ? Eh bien, décomposons-les :

Activités hors ligne : en stockant toutes les pages HTML visitées par votre robot, vous créez en quelque sorte une bibliothèque hors ligne de données Web. Cela signifie que vous pouvez revenir en arrière et extraire des données dont vous ne saviez même pas que vous en aviez besoin lors de votre premier passage. C'est comme avoir une seconde chance.

Stockage sélectif : le stockage de documents HTML entiers peut être un peu lourd en termes d'espace disque. Soyez donc malin : enregistrez uniquement les éléments HTML essentiels dans un format de chaîne dans votre base de données. Il s'agit d'optimiser le stockage sans sacrifier les données.

Tenez un journal de scraping : pour en tirer le meilleur parti, votre scraper doit tenir un journal. Enregistrez les pages qu'il visite, le temps nécessaire pour scraper chaque page, le résultat des opérations d'extraction de données, etc.

7. Déjouez les CAPTCHA avec un service de résolution

Soyons honnêtes : les CAPTCHA sont des gardes conçus pour tenir les robots à distance. Ces petites énigmes sont trop faciles pour les humains mais un cauchemar pour les machines. Si vous ne parvenez pas à résoudre un CAPTCHA, vous risquez d'être catalogué comme un robot par les systèmes anti-bots.

De nombreux services de réseau de diffusion de contenu (CDN) populaires sont équipés de CAPTCHA dans le cadre de leurs défenses anti-bot. Alors, comment surmonter ce parcours du combattant ? Un service de résolution de CAPTCHA peut vous sauver la mise.

Les services de résolution de CAPTCHA utilisent la puissance des travailleurs humains pour résoudre ces énigmes. Ces services automatisent le processus de recrutement de l'aide humaine pour résoudre les CAPTCHA. C'est comme avoir une équipe d'experts en résolution de CAPTCHA à votre disposition.

Pour ceux qui recherchent rapidité et efficacité, des API avancées de scraping Web sont disponibles. Ces API sont votre raccourci pour contourner ces obstacles CAPTCHA.

8. Restez du bon côté de la loi

Nous terminons la liste des conseils de récupération de données sans mentionner la légalité du processus de récupération de données Web. Il est essentiel que vous ne marchiez pas sur les plates-bandes des personnes concernées. En d'autres termes, vous êtes responsable de ce que vous récupérez, alors examinez toujours attentivement les conditions d'utilisation du site Web cible.

Les conditions d'utilisation vous indiquent les choses à faire et à ne pas faire lors du scraping de données à partir de ce site Web particulier. Ces informations vous indiqueront ce qui est équitable et ce qui est interdit. Elles vous expliquent tout sur le scraping Web responsable.

La plupart du temps, vous n'aurez pas l'autorisation de republier les données récupérées ailleurs en raison de restrictions de droits d'auteur. Ignorer ces règles peut vous entraîner dans des ennuis juridiques, et croyez-moi, vous voulez éviter cela.

Emballer!

Suivez ces tactiques d'exploration avancées pour la récupération de données Web afin de garantir un processus de scraping Web fluide. De plus, les sites Web à défilement et les défilements infinis exigent de la finesse, et un robot d'exploration en direct résout vos problèmes.

Bon grattage !