Passer au contenu principal

Développement professionnel d’un script Selenium

Pour mettre en œuvre une automatisation web efficace sur Square Cloud, il est essentiel d’établir un environnement de développement adéquat et de suivre les bonnes pratiques de configuration.

Prérequis techniques essentiels

  • Python et pip : Assurez-vous d’avoir Python et pip installés sur votre système. Si ce n’est pas le cas, téléchargez-les depuis le site officiel de Python et le site officiel de Pip.
  • Compte Square Cloud : Créez votre compte via la page d’inscription, en utilisant votre adresse e-mail pour l’enregistrement.
  • Plan payant actif : Un plan payant est nécessaire pour garantir des ressources adéquates à l’exécution des applications Selenium. Consultez nos plans disponibles et choisissez le plus adapté à vos besoins.

Configuration de l’environnement Selenium

Une fois Python et pip installés, poursuivez avec la création du script Selenium. Tout d’abord, installez la bibliothèque Selenium :
Terminal
pip install selenium
Ensuite, créez un fichier Python (par exemple, main.py) et ajoutez le code suivant pour implémenter un script Selenium basique :
main.py
import time
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service

# Configuration options for Chromium
options = Options()
options.add_argument("--headless")  # Runs in background without graphical interface
options.add_argument("--no-sandbox")  # Required for execution as root in containerized environments
options.add_argument("--disable-dev-shm-usage")  # Overcomes shared memory limitations on large pages

# Driver initialization
service = Service('/usr/bin/chromedriver')  # Default ChromeDriver path on Square Cloud
driver = webdriver.Chrome(service=service, options=options)

# Browser window dimensions configuration
driver.set_window_size(1920, 1080)  # Adjust as needed for your application

# Navigate to web page
driver.get('https://www.google.com')

# Loop for screenshot capture every minute
while True:
    driver.save_screenshot('page.png')
    print("Page screenshot saved successfully.")
    time.sleep(60)  # 60-second pause between captures

Gestion des dépendances avec requirements.txt

Le fichier requirements.txt est un composant essentiel qui liste toutes les bibliothèques externes nécessaires à votre projet. Il est crucial d’inclure toutes les dépendances utilisées, à l’exception des bibliothèques Python natives comme random et datetime. Ce fichier doit être inclus lors de la soumission de votre application à Square Cloud.
requirements.txt
selenium

Configuration du chemin de Chromium

Dans l’implémentation présentée ci-dessus, il n’est pas nécessaire de définir explicitement le chemin de Chromium, car le WebDriver Selenium peut localiser automatiquement le navigateur lorsqu’il est installé dans un emplacement système standard. Le ChromeDriver, spécifié avec Service('/usr/bin/chromedriver'), sait où localiser l’exécutable Chromium/Chrome.

Architecture de Square Cloud

Sur Square Cloud, Chromium est installé dans /usr/bin/chromium, qui est l’emplacement système standard. Par conséquent, le WebDriver Selenium peut le localiser automatiquement via le ChromeDriver spécifié. Ainsi, il n’est pas nécessaire de spécifier explicitement le chemin de Chromium dans le code, sauf s’il existe des raisons particulières de le faire, comme des installations personnalisées ou des configurations d’environnement différentes.

Fichier de configuration Square Cloud

À découvrir : comment créer le fichier de configuration pour Square Cloud.

Le fichier squarecloud.app est un fichier de configuration essentiel qui sera utilisé pour configurer votre application sur Square Cloud. Il définit le nom, la description, la version, le fichier principal, entre autres configurations fondamentales.

Upload du projet sur Square Cloud

Après avoir préparé tous les fichiers du projet, poursuivez avec l’upload sur Square Cloud et hébergez votre application de manière professionnelle.
Accédez au tableau de bord Square Cloud et uploadez les fichiers de votre projet.
Téléversement d'une application vers Square Cloud

Ressources et documentation supplémentaires

Pour des informations plus détaillées sur Selenium et ses outils avancés, consultez la documentation officielle de Selenium. Vous y trouverez des guides techniques détaillés, des tutoriels spécialisés et une documentation API complète pour tirer le meilleur parti des fonctionnalités de Selenium.

Contactez-nous

Si vous rencontrez toujours des difficultés techniques, notre équipe de support spécialisée est disponible pour vous aider. Contactez-nous et nous serons ravis de vous aider à résoudre tout problème.