Aujourd’hui il est possible de récupérer tous types d’informations ou de données sur internet .
Il est même possible d’effectuer des tâches de façon automatique afin de gagner en temps et de ne plus utiliser le procédé manuel qui est fastidieux et lent. Tu te demandes comment c’est possible? Avec Python et Selenium, je te montre comment automatiser les tâches et faire l'extraction de données. Dans cet article, je vous montre comment faire du web scraping facilement sur une page internet
C’est quoi le Web Scraping ?
Le web scraping de l'anglais scraping = « gratter/racler ») selon Wikipedia est une technique d'extraction du contenu de sites Web, via un script ou un programme, dans le but de le transformer pour permettre son utilisation dans un autre contexte comme l'enrichissement de bases de données, le référencement ou l'exploration de données.
C’est quoi Selenium?
Selenium est un outil puissant pour contrôler les navigateurs Web via des programmes et effectuer l'automatisation du navigateur. Il est fonctionnel pour tous les navigateurs, fonctionne sur tous les principaux systèmes d'exploitation et ses scripts sont écrits dans différents langages, à savoir Python , Java , C# , etc.
Nous utiliserons mon blog eroambahub pour effectuer nos tests de web Scraping
Let’s GO!
Créons un fichier scraping.py et ajoutons le code suivant
from selenium import webdriver
from selenium.webdriver.common.by import By
from time import sleep
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
driver=webdriver.Chrome(service=Service(ChromeDriverManager().install()))
driver.get('https://eroambahub.com/');
1 Récupérer le titre de la page
sleep(2)
print(driver.title)
2 Récupérer le copyright dans le footer du blog
result = driver.find_elements(By.CLASS_NAME, "copyright")
print(result[0].text)
ou
result = driver.find_elements(By.CSS_SELECTOR, ".copyright")
print(result[0].text)
3 Ouvrir le premier article et récupérer le titre, la catégorie et revenir à la page d'accueil
links=driver.find_elements(By.CLASS_NAME, "post-link");
links[0].click();
sleep(3)
result = driver.find_element(By.CLASS_NAME, "post-tag")
print(result.text)
result = driver.find_element(By.CLASS_NAME, "post-title")
print(result.text)
driver.back()
4 Appuyez sur voir plus et récupérer tous les titres du blog
driver.find_element(By.CLASS_NAME, "infinite-scroll-button").click();
sleep(5)
result = driver.find_elements(By.CLASS_NAME, "post-title-link")
for e in result:
print(e.text)
5 Ouvrir tous les articles, récupérer la catégorie et titre ensuite retour à la page d'accueil
links=driver.find_elements(By.CLASS_NAME, "post-link");
for index, item in enumerate(links):
newLink=driver.find_elements(By.CLASS_NAME, "post-link");
print(index, item)
newLink[index].click()
tag = driver.find_element(By.CLASS_NAME, "post-tag")
print(tag.text)
sleep(3)
result = driver.find_element(By.CLASS_NAME, "post-title")
print(result.text)
sleep(3)
driver.back()
sleep(4)
Vidéo : Python Webscraping avec selenium
Maintenant tu as les bases pour faire du web scraping avec python et selenium.
Tu pourras automatiser plusieurs tâches selon tes besoins.