Faites défiler un site Web à l'aide de Python Selenium

Fariba Laiq 10 octobre 2023
  1. Installer Selenium et Chrome WebDriver
  2. Faites défiler un site Web à l’aide de Python Selenium
Faites défiler un site Web à l'aide de Python Selenium

Parfois, nous pouvons vouloir automatiser des tâches dans un navigateur, comme le défilement sur un site Web. Python dispose d’un puissant outil d’automatisation Web appelé Selenium.

Il prend le contrôle du navigateur Web et nous permet d’effectuer automatiquement des actions spécifiques. Nous pouvons écrire un script qui défile automatiquement horizontalement et verticalement sur un site Web.

Installer Selenium et Chrome WebDriver

Pour installer Selenium, nous utilisons la commande suivante.

#Python 3.x
pip install selenium

ChromeDriver est un autre exécutable que Selenium WebDriver utilise pour interagir avec Chrome. Si nous voulons automatiser les tâches sur le navigateur Web Chrome, nous devons également installer ChromeDriver.

Selon la version du navigateur Chrome, nous devons sélectionner un pilote compatible pour celui-ci. Voici les étapes pour installer et configurer le pilote Chrome :

  1. Cliquez sur ce lien. Téléchargez le pilote Chrome en fonction de la version de votre navigateur Chrome et du type de système d’exploitation.
  2. Si vous souhaitez trouver la version de votre navigateur Chrome, cliquez sur les trois points dans le coin supérieur droit de Chrome, cliquez sur Aide et sélectionnez À propos de Google Chrome. Vous pouvez voir la version de Chrome dans la section à propos.
  3. Extrayez le fichier zip et exécutez le pilote Chrome.

Faites défiler un site Web à l’aide de Python Selenium

Syntaxe:

driver.execute_script("window.scrollBy(x_pixels, y_pixels);")

Ici, les x_pixels indiquent le nombre de pixels à faire défiler horizontalement (sur l’axe des x), et les y_pixels désignent le nombre de pixels à faire défiler verticalement (sur l’axe des y). Dans ce guide, on scrolle uniquement verticalement pour que les x_pixels soient à 0.

Faites défiler vers le bas par pixels spécifiés

Nous avons créé l’instance WebDriver dans le code suivant et spécifié le chemin d’accès au pilote Chrome. Ensuite, nous avons défini l’URL du site Web cible sur l’instance du pilote à l’aide de la méthode get().

Il ouvrira le site Web cible dans le navigateur souhaité. Nous avons maximisé la fenêtre de Chrome pour une meilleure image en utilisant la méthode maximize_window().

Selenium a la particularité d’exécuter des commandes JavaScript via la méthode execute_script(). Nous avons automatisé le défilement vers le bas de 1000 pixels en utilisant la méthode window.scrollBy() et avons passé cette commande à l’exécuteur JavaScript.

Le site Web défilera automatiquement verticalement de 1000 pixels.

Exemple de code :

# Python 3.x
from selenium import webdriver

driver = webdriver.Chrome(r"E:\download\chromedriver.exe")
driver.get("https://www.verywellmind.com/what-is-personality-testing-2795420")
driver.maximize_window()
driver.execute_script("window.scrollBy(0, 1000);")

Production:

Défilement vers le bas de sélénium par pixels

Faites défiler vers le bas du site Web

Supposons que nous voulions faire défiler jusqu’au bas de la page. Le document.body.scrollHeight donnera la hauteur totale de la page en pixels.

Nous spécifierons cette hauteur comme le nombre de pixels à faire défiler vers le bas.

Exemple de code :

# Python 3.x
from selenium import webdriver

driver = webdriver.Chrome(r"E:\download\chromedriver.exe")
driver.get("https://www.verywellmind.com/what-is-personality-testing-2795420")
driver.maximize_window()
driver.execute_script("window.scrollBy(0, document.body.scrollHeight);")

Production:

Sélénium Faites défiler vers le bas

Auteur: Fariba Laiq
Fariba Laiq avatar Fariba Laiq avatar

I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.

LinkedIn

Article connexe - Python Selenium