Konfigurieren Sie eine Selenium-Umgebung basierend auf Linux und implementieren Sie den Betrieb

Konfigurieren Sie eine Selenium-Umgebung basierend auf Linux und implementieren Sie den Betrieb

1. Selenium unter Linux verwenden

1. Installieren Sie Chrome

Installieren Sie Google Chrome mit dem folgenden Befehl

yum install https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm

Sie können es auch lokal herunterladen und dann installieren

wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm
yum installiere ./google-chrome-stable_current_x86_64.rpm

Installieren Sie die erforderlichen Bibliotheken

yum install mesa-libOSMesa-devel gnu-free-sans-fonts wqy-zenhei-fonts

2. Installieren Sie Chromedriver (die entsprechenden Versionen von Chrome und Chromedriver sind am Ende angehängt)

offizielle Chrome-Website

wget https://chromedriver.storage.googleapis.com/2.38/chromedriver_linux64.zip

Taobao-Quelle (empfohlen)

wget http://npm.taobao.org/mirrors/chromedriver/2.41/chromedriver_linux64.zip

Entpacken Sie die heruntergeladene Datei und legen Sie sie am folgenden Speicherort ab:

Entpacken Sie chromedriver_linux64.zip
mv chromedriver /usr/bin/

Ausführungsberechtigungen erteilen

chmod +x /usr/bin/chromedriver

3. Führen Sie den Code aus, um zu sehen, ob er erfolgreich ist (unter Python).

von Selenium importiere Webtreiber
Treiber = Webtreiber.Chrome()

------------Vergleichstabelle kompatibler Versionen für 2019-----------
ChromeDriver 78.0.3904.11 (12.09.2019)---------Unterstützt Chrome Version 78
ChromeDriver 77.0.3865.40 (2019-08-20)---------Unterstützt Chrome Version 77
ChromeDriver 76.0.3809.12 (07.06.2019)---------Unterstützt Chrome Version 76
ChromeDriver 75.0.3770.8 (29.04.2019)---------Unterstützt Chrome Version 75
ChromeDriver v74.0.3729.6 (2019-03-14)--------Unterstützt Chrome v74
ChromeDriver v2.46 (01.02.2019)----------Unterstützt Chrome v71-73

2. Chrome läuft im Nicht-Schnittstellenmodus

von Selenium importiere Webtreiber
von selenium.webdriver.chrome.options importiere Optionen
 
chrome_options = Optionen()
chrome_options.add_argument('--no-sandbox')#Beheben Sie den Fehler, dass die DevToolsActivePort-Datei nicht existiertchrome_options.add_argument('window-size=1920x3000') #Geben Sie die Browserauflösung anchrome_options.add_argument('--disable-gpu') #In der Google-Dokumentation wird erwähnt, dass dieses Attribut hinzugefügt werden muss, um Fehler zu vermeiden
chrome_options.add_argument('--hide-scrollbars') #Bildlaufleisten ausblenden, für einige spezielle Seitenchrome_options.add_argument('blink-settings=imagesEnabled=false') #Keine Bilder laden, Geschwindigkeit erhöhenchrome_options.add_argument('--headless') #Der Browser stellt keine Visualisierungsseiten zur Verfügung. Wenn das System unter Linux keine Visualisierung unterstützt, schlägt der Start ohne diese Ergänzung fehl#Browserobjekt erstellendriver = webdriver.Chrome(executable_path=path, chrome_options=chrome_options)#executable_path: Browsertreiber pathdriver.get(url)

3. Laden Sie Dateien im Nicht-Schnittstellenmodus herunter

Bisher konnte Chromedriver im Headless-Modus Dateien nicht richtig herunterladen, da die bereitgestellte Einstellungsdatei nur unzureichend analysiert wurde. Ein Ingenieur des Headless-Chrome-Teams schlug vor, dieses Problem mit „Page.setDownloadBehavior“ von DevTools zu beheben. Diese Änderungsliste implementiert diesen Fix. Heruntergeladene Dateien werden standardmäßig in das aktuelle Verzeichnis verschoben, das beim Instanziieren einer Chromedriver-Instanz mit download_dir festgelegt werden kann. Außerdem wurden Tests hinzugefügt, um die korrekte Download-Funktionalität sicherzustellen.

Parameter = {'Verhalten': 'erlauben', 'Downloadpfad': r'C:\Benutzer\Debanjan.B\Downloads'}
driver.execute_cdp_cmd('Page.setDownloadBehavior', Parameter)

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Detaillierte Erklärung zur Verwendung von Selenium Chrome unter Linux
  • Analyse der Linux-Konfiguration zur Realisierung eines schlüssellosen Anmeldevorgangs
  • Detailliertes Tutorial zum Hochladen und Konfigurieren von JDK und Tomcat unter Linux
  • Installations- und Konfigurationsmethode von Zabbix Agent auf der Linux-Plattform
  • vscode Linux C++-Entwicklungscode, automatische Eingabeaufforderungskonfiguration unter Win10-Umgebung (basierend auf WSL)
  • Tutorial zur Installation und Konfiguration des Linux-Prozessmanagement-Tools Supervisor
  • Zusammenfassung der Konfigurationsmethoden für Linux-Umgebungsvariablen (Unterschiede zwischen .bash_profile und .bashrc)

<<:  Natives JS zur Implementierung eines Dropdown-Menüs

>>:  Detailliertes Tutorial zum Herunterladen, Installieren und Konfigurieren von MySQL 5.7.27

Artikel empfehlen

Lösung für „Ubuntu kann keine Verbindung zum Netzwerk herstellen“

Effektive Lösung für Ubuntu, wenn in einer virtue...

Detaillierte Erklärung des Workbench-Beispiels in MySQL

MySQL Workbench – Modellierungs- und Designtool 1...

Löschen von Dateien mit Leerzeichen in Linux (keine Verzeichnisse)

In unserer täglichen Arbeit kommen wir oft mit Da...

Beispielcode zur Trennung von Front-End und Back-End mit FastApi+Vue+LayUI

Inhaltsverzeichnis Vorwort Projektdesign hinteres...

Einfacher Vergleich von Meta-Tags in HTML

Das Meta-Tag wird verwendet, um Dateiinformationen...

W3C Tutorial (7): W3C XSL Aktivitäten

Ein Stylesheet beschreibt, wie ein Dokument angez...

So stellen Sie zabbix_agent in Docker bereit

zabbix_agent-Bereitstellung: Empfehlung: zabbix_a...

Detaillierte Schritte zur Installation von Anaconda unter Linux (Ubuntu 18.04)

Anaconda ist die beliebteste Python-Plattform für...

Detaillierte Erklärung von mktemp, einem grundlegenden Linux-Befehl

mktemp Erstellen Sie auf sichere Weise temporäre ...

Detaillierte Erklärung der Kontrolle des Zugriffsvolumens durch Nginx

Zweck Machen Sie sich mit den Nginx-Modulen ngx_h...