1. Einleitung Ich möchte Selenium verwenden, um Daten von einer Website zu scrapen, aber manchmal treten bei der Verwendung von Phantomjs Fehler auf. Chrome verfügt jetzt auch über einen Headless-Betriebsmodus, sodass Phantomjs nicht mehr benötigt werden. Bei der Installation von Chrome auf dem Server sind jedoch einige Fehler aufgetreten. Hier ist eine Zusammenfassung des gesamten Installationsvorgangs 2. Installieren Sie Chrome auf Ubuntu # Installieren Sie Google Chrome # https://askubuntu.com/questions/79280/how-to-install-chrome-browser-properly-via-command-line sudo apt-get installiere libxss1 libappindicator1 libindicator7 wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb sudo dpkg -i google-chrome*.deb # Könnte „Fehler“ anzeigen, behoben in der nächsten Zeile sudo apt-get install -f Es sollte jetzt installiert sein. Testen Sie es, indem Sie den folgenden Befehl ausführen:
Hier verwenden wir den Headless-Modus für Remote-Debugging. Die meisten Ubuntu-Rechner haben keine GPU, daher wird --disable-gpu verwendet, um Fehler zu vermeiden. Locken http://localhost:9222 Wenn die Installation erfolgreich war, werden Ihnen Debuginformationen angezeigt. Ich werde hier jedoch einen Fehler melden. Im Folgenden finden Sie die Lösung für den Fehler. 1) Mögliche Fehlerlösungen Nach dem Ausführen des obigen Befehls erhalten Sie möglicherweise eine Fehlermeldung, dass Chrome nicht als Root ausgeführt werden kann. Verwenden Sie derzeit die folgenden Einstellungen, um Chrome einzurichten 1. Suchen Sie die Google Chrome-Datei Mein Standort ist /opt/google/chrome/ 2. Öffnen Sie die Google Chrome-Datei mit vi
Gefunden in der Datei
3. Fügen Sie am Ende –user-data-dir –no-sandbox hinzu. Der gesamte Shell-Befehl lautet
4. Öffnen Sie Google Chrome erneut und Sie können normal darauf zugreifen! 3. Installieren Sie den Chrome-Treiber Chromedriver Chromedriver herunterladen Chromedriver bietet eine API für den Betrieb von Chrome und ist eine Brücke für Selenium zur Steuerung von Chrome. Am besten installieren Sie die neueste Version von Chromedriver. Ich erinnere mich, dass ich am Anfang nicht die neueste Version installiert habe und ein Fehler gemeldet wurde. Es gibt kein Problem mit der neuesten Version von Chromedriver. Die neueste Version finden Sie unter der folgenden Adresse Als ich diesen Artikel schrieb, war die neueste Version 2.37 wget https://chromedriver.storage.googleapis.com/2.37/chromedriver_linux64.zip An diesem Punkt ist die serverseitige, schnittstellenfreie Version von Chrome installiert. 4. So verwenden Sie die Nicht-Schnittstellenversion von Chrome von Selenium importiere Webtreiber chrome_options = webdriver.ChromeOptions() chrome_options.add_argument('--headless') chrome_options.add_argument('--disable-gpu') chrome_options.add_argument("user-agent='Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, wie Gecko) Chrome/62.0.3202.94 Safari/537.36'") wd = Webtreiber.Chrome (Chrome-Optionen = Chrome-Optionen, ausführbarer Pfad = „/home/Chrome/Chrome-Treiber“) wd.get("https://www.163.com") Inhalt = wd.page_source.encode('utf-8') Inhalt drucken wd.quit() Hier kann der dritte Einstellungsparameter in chrome_options verhindern, dass die Website erkennt, dass Sie den randlosen Modus zum Anti-Crawlen verwenden. Die anderen beiden Einstellungen unten öffnen Chrome mit einer Benutzeroberfläche auf dem Desktop-Linux-System oder Mac-System, wenn sie nicht festgelegt sind. Beim Debuggen können Sie die folgenden beiden Zeilen auskommentieren und Chrome mit einer Benutzeroberfläche zum Debuggen des Programms verwenden. chrome_options.add_argument('--headless') chrome_options.add_argument('--disable-gpu') 5. Referenzen https://jiayi.space/post/zai-ubuntufu-wu-qi-shang-shi-yong-chrome-headless Zusammenfassen Dies ist das Ende dieses Artikels über Selenium+Chromedriver, der auf dem Server ausgeführt wird. Weitere Informationen über Selenium+Chromedriver, der auf dem Server ausgeführt wird, finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: So migrieren Sie den MySQL-Speicherort auf eine neue Festplatte
>>: JavaScript Canvas realisiert dynamische Punkt- und Linieneffekte
Verwenden Sie navicat zum Testen und Lernen: Verw...
Einführung: Manchmal müssen wir zur Entwicklung e...
1. Installieren Sie die virtuelle Maschine Hyper-...
Tatsächlich ist XHTML 1.0 in zwei Typen unterteil...
Dieser Artikel beschreibt die MySQL-Einzeltabelle...
Beachten! ! ! Wählen Sie * vom Benutzer, wobei di...
Im vorherigen Artikel wurde vorgestellt, wie Vue ...
Wie unten dargestellt: 1. ssh -v -p [Portnummer] ...
Docker-Funktionen 1) Schneller Einstieg Benutzer ...
Einführung der Server-U-Software Server-U ist ein...
1. Umwelt VS 2019 16.9.0 Vorschau 1.0 .NET SDK 5....
Heute bin ich auf eine sehr seltsame Situation ge...
Inhaltsverzeichnis 1. Kommunikation zwischen Elte...
In diesem Artikel erfahren Sie, wie Sie mit JavaS...
ylbtech_html_drucken HTML-Druckcode, unterstützt S...