Debian 10/9 安裝 Selenium+ChromeDriver


轉發: https://blog.csdn.net/GO_D_OG/article/details/79073727

 

查看Debian版本 :

cat /etc/issue

 

測試配置:

google-chrome 版本

 

root@a713d689f464:/opt/chrome# google-chrome -version
Google Chrome 83.0.4103.116

ChromeDriver 版本: 83

 

一、安裝chrome

wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb sudo apt-get -f install dpkg -i google-chrome-stable_current_amd64.deb

 

1、如果提示錯誤:

dpkg: error processing package google-chrome-stable (--install):

請執行:

sudo apt-get upgrade sudo apt-get update sudo apt-get -f install dpkg -i google-chrome-stable_current_amd64.deb

 

之后就不會報錯了,安裝成功的話可以查看到安裝路徑以及安裝的版本:


二、下載chromedriver
要根據chrome瀏覽器的版本對應下載driver驅動的版本:
下載地址:http://npm.taobao.org/mirrors/chromedriver/

 

 解壓后放到 /usr/bin/ 目錄下

mv chromedriver /usr/bin/

 

 

三、安裝Xvfb

sudo apt-get install xvfb

安裝好后執行:

Xvfb -ac :7 -screen 0 1280x1024x8 -extension RANDR -nolisten inet6 & export DISPLAY=:7 (和上一步的number號相同)

 

由於每次需要運行程序前都需要啟動一次xvfb太麻煩,所以直接寫一個開機自啟動腳本,這樣下次就直接執行程序就可以了。我們需要將腳本寫在/etc/rc.local路徑下,開機之后會執行/etc/rc.local文件中的腳本,在exit 0前面添加以下內容:
安裝Xvfb

#! /bin/bash
case "$1" in start) /usr/bin/Xvfb :7 -ac -screen 0 1280x1024x8 -extension RANDR -nolisten inet6 & export DISPLAY=:7 ;; stop) killall Xvfb ;; esac

 

關於錯誤:Chrome failed to start: exited abnormally
這個錯誤我遇到了兩次,第一次的時候只需要安裝Xvfb就成功解決了,可第二次我已經安裝了Xvfb且正常打開了仍然提示了這樣的錯誤,原因是因為需要在自己測試代碼里加上以下內容(很關鍵!):

// 禁用擴展 chromeOptions.addArguments("--disable-extensions"); // 使用無頭模式運行 chromeOptions.addArguments("--headless"); // 禁用GPU chromeOptions.addArguments("--display-gpu"); // 啟動無沙盒模式運行 chromeOptions.addArguments("--no-sandbox");

 

可能是因為chrome占內存過大而卡屏,使得chrome無法正常打開
並且記得chromedriver的權限要設置為可執行:

chmod -R 777 chromedriver


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM