Comment utiliser des adresses IP tournantes et des proxies avec Python 3

Arrêtez de copier le net. Scrapez le.

 

Comment utiliser des adresses IP tournantes et des proxies avec Python 3

Lorsque vous collectez des données depuis le net, vous allez rencontrer un problème récurrent et quelque peu embêtant : les sites web peuvent bloquer votre adresse IP, et vous empêcher d’accéder aux données souhaitées. Il y a toutefois de nombreuses méthodes qui permettent de contourner ce blocage, que nous allons vous révéler, en toute amitié :

  • Adresses IP tournantes
  • Utilisation de Proxies
  • User Agents mobiles
  • Utilisation de browsers camouflés, ou headless browsers
  • Réduction de la vitesse de collecte

etc.

Qu’est-ce qu’une adresse IP ?

A en croire notre cher encyclopédie collective, wikipedia.org/wiki/Adresse_ip, une adresse IP (avec IP pour Internet Protocol) est un numéro d’identification qui est attribué de façon permanente ou provisoire à chaque branchement à un réseau informatique utilisant l’Internet Protocol. En d’autres termes, dès que vous souscrivez un abonnement chez Free, et que vous recevez votre jolie box haut débit, une adresse IP vous est assigné. Il ne s’agit donc pas d’une immatriculation personnelle, mais bien d’une immatriculation par branchement au réseau informatique : par foyer, par lieu public, pas source de Wifi donc.

L’adresse IP, reliée à un branchement au réseau informatique, révèle donc de nombreuses données sur ses utilisateurs. Outre le numéro d’identification, on y trouve pêle-mêle :  l’adresse IP, la position géographique, le nom du fournisseur d’accès, et le proxy utilisé.

RGPD ou pas, l’adresse IP regorge donc de données, et elle est régulièrement utilisée par la police (dans les séries télé tout du moins) pour traquer des criminels en tout genre.

En utilisant des proxies, et des adresses IP tournantes, et en faisant également se modifier votre User Agent, vous allez être capable de contourner la plupart des mesures anti-scrapping du web. Liberté, liberté chérie, protège donc tes défenseurs.

Le concept de rotation d’adresses IP est plutôt simple — vous allez faire croire au site web que vous n’êtes pas un ‘robot’ unique ou une personne qui se rend sur le site web, mais bien plusieurs vrais utilisateurs qui se rendent sur le site web depuis plusieurs lieux distincts dans le monde. Si vous faites ça bien, les chances pour vous d’être bloqué par un site web un tant soi peu possessif vont être réduites drastiquement.

Dans ce post de bloc, nous allons vous montrer comment envoyer une requête à un site web en utilisant un proxy, puis nous vous montrerons comment envoyer ces requêtes depuis plusieurs adresses IP et proxies.

Comment envoyer une requête avec Python 3 en utilisant Requests

Si vous utiliser Python-Requests, vous pouvez envoyer des requêtes en passant par un proxy, en configurant l’argument proxies. Ainsi :

Ca y est, vous venez de faire une requête masquée depuis un nouveau proxy. Nous allons maintenant vous montrer comment faire une requête depuis un proxy public.

Où trouver un proxy publique

Il existe de nombreux sites web qui proposent des proxies gratuits sur internet. L’un d’entre eux, http://www.freeproxylists.net/fr a été désigné comme cobaye afin de servir notre exemple. Nous allons nous rendre sur ce site, et prendre un proxy qui supporte une connexion cryptée, ou HTTPS (puisque nous allons nous rendre sur un site https).

Et parce que nous avons le goût du voyage, nous allons choisir un pays exotique : le……. Canada.

Et voilà, il nous suffit de choisir une de ces adresses IP. Attention, toutefois, ces adresses IP publiques, utilisées partout dans le monde, deviennent vite inactives. Si vous souhaitez répéter l’expériences, veillez à acquérir une nouvelle adresse IP.

Notre proxy choisi est le : 137.75.168.175 Port 8080. Vive le Québec Libre.

Nous allons maintenant faire une requête vers un site réceptacle qui va nous renvoyer en réponse l’adresse IP utilisée : il s’agit de l’HTTPBin’s IP endpoint. Nous allons pouvoir nous assurer que le proxy fonctionne convenablement.

Et voilà notre réponse :

Vous pouvez voir que la requête a été envoyée depuis un proxy. Ca y est, vous avancez masquer.

Vous avez des problèmes pour collecter la donnée dont vous avez besoin ? Nous sommes là pour vous aider. Si votre extraction est régulièrement interrompu par des bloquages de la part de site web, ou d’autres problèmes de gestion des infrastructures informatiques, utilisez Lobstr pour réaliser votre extraction de données. Sans douleur, rapide, ultra-compétitif.

Avertissement: Tout code fourni dans nos tutoriels est destiné à des fins d’illustration et d’apprentissage uniquement. Nous ne sommes pas responsables de la façon dont il est utilisé et n’assumons aucune responsabilité pour toute utilisation préjudiciable du code source. La simple présence de ce code sur notre site n’implique pas que nous encourageons le scraping ou l’extraction de données des sites référencés dans le code et le tutoriel qui l’accompagne. Les tutoriels ne font qu’illustrer la technique de programmation des scrapers web pour les sites internet populaires. Nous ne sommes pas obligés de fournir un support pour le code, cependant, si vous ajoutez vos questions dans la section des commentaires, nous pouvons vous y répondre périodiquement.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *