python3使用selenium3的坑


網絡看了很多的文章,大部分都是不完整, 還有很多誤導性極強的教程 ,特別是chromedriver這東西.簡直一堆坑.

一首先是安裝python3.6.5

root@ubuntu:~# add-apt-repository ppa:jonathonf/python-3.6

root@ubuntu:~# apt-get update

root@ubuntu:~# apt-get install python3.6

root@ubuntu:~# python3.6

如果出現以下內容證明成功:

Python 3.6.5 (default, May  3 2018, 10:08:28)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>

 

二:設置默認python3對應為python3.6

 root@ubuntu:~# update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.5 1

root@ubuntu:~# update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 2

root@ubuntu:~# update-alternatives --config python3

看到以下內容:

There are 2 choices for the alternative python3 (providing /usr/bin/python3).


  Selection    Path                Priority   Status
------------------------------------------------------------
* 0            /usr/bin/python3.6   2         auto mode
 1            /usr/bin/python3.5   1         manual mode
 2            /usr/bin/python3.6   2         manual mode
Press <enter> to keep the current choice[*], or type selection number:

回車完畢

三:升級pip3

root@ubuntu:~# apt-get install python3-pip

root@ubuntu:~# pip3 install --upgrade pip

 

四:安裝selenium

root@ubuntu:~# pip3 install selenium

 

五:安裝chrome瀏覽器

下載谷歌瀏覽器的deb安裝包

##  https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb

$sudo apt install libappindicator1 libindicator7

$sudo dpkg -i google-chrome-stable_current_amd64.deb

$sudo apt -f install        ####修復依賴關系

 

六:安裝chromedriver

    chromedriver版本對照表如下

ChromeDriver v2.41 (2018-07-07)----------Supports Chrome v67-69

ChromeDriver v2.40 (2018-06-07)----------Supports Chrome v66-68
ChromeDriver v2.39 (2018-05-30)----------Supports Chrome v66-68
ChromeDriver v2.38 (2018-04-17)----------Supports Chrome v65-67
ChromeDriver v2.37 (2018-03-16)----------Supports Chrome v64-66
ChromeDriver v2.36 (2018-03-02)----------Supports Chrome v63-65
ChromeDriver v2.35 (2018-01-10)----------Supports Chrome v62-64

比如要按照自己系統chrome瀏覽器版本下載對應chromedriver版本
將下載chromedriver放到/usr/bin/下
=== 代碼需要指定chromedriver的路徑,不是系統chrome瀏覽器的路徑,這個要千萬注意.如下:
chromedriver = "/usr/local/bin/chromedriver"
os.environ["webdriver.chrome.driver"] = chromedriver
driver = webdriver.Chrome(chromedriver)
driver.get(url="https://www.qq.com")
測試以上代碼,如果chrome瀏覽器能正常出來並打開qq那就是chromedriver已安裝好.
原本路徑可以直接寫到系統的環境變量里的,只可惜,如果這樣做,crontab去調用chrome的時候就是報錯.

=== 如需要將腳本放到crontab里去執行需要原來的執行命令前加上 export DISPLAY=:0&& 如下
export DISPLAY=:0&&/usr/bin/python3 /apps/run_brower_text.py >> /apps/auto.log 2>&1



 


免責聲明!

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



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