轉載:https://www.cnblogs.com/yoyoketang/p/11582012.html
前言
selenium在windows機器上運行,每次會啟動界面,運行很不穩定。於是想到用chrome來了的headless無界面模式,確實方便了不少。
為了提高自動化運行的效率和穩定性,於是把selenium自動化環境部署到linux服務器上,這樣更方便。
環境:
centons 7.6
python 3.6
chrome 77.0.3865.90
chromedriver 77.0.3865.40
selenium 3.14
安裝最新版chrome
方法一:下載到本地后安裝
先下載google-chrome最新版77.0.3865.90(有些小伙伴可能下載不了,所以我放到QQ群750815713,群文件下載)
wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm
下載完成后,使用yum安裝本地包
yum localinstall google-chrome-stable_current_x86_64.rpm
方法二:yum在線安裝
yum install google-chrome-stable_current_x86_64.rpm
或者指定地址
yum install https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm
安裝完成之后,檢查下版本號
> google-chrome -version Google Chrome 77.0.3865.90
chromedriver驅動
下載chromedriver驅動,歷史版本http://npm.taobao.org/mirrors/chromedriver找到對應的驅動版本
可以使用wget下載zip包
wget http://npm.taobao.org/mirrors/chromedriver/77.0.3865.40/chromedriver_linux64.zip
解壓zip包,如果提示沒有zip,那就yum -y install zip
先安裝下
unzip chromedriver_linux64.zip # 解壓zip
解壓后把chromedriver移動到/usr/bin/目錄下
mv chromedriver /usr/bin/
查看chromedriver版本號
> chromedriver --version ChromeDriver 77.0.3865.40 (f484704e052e0b556f8030b65b953dce96503217-refs/branch-heads/3865@{#442})
安裝selenium
安裝最新版selenium 3.141.0
pip3 install selenium
[root@yoyo chrome]# pip show selenium Name: selenium Version: 3.141.0 Summary: Python bindings for Selenium Home-page: https://github.com/SeleniumHQ/selenium/ Author: UNKNOWN Author-email: UNKNOWN License: Apache 2.0 Location: /usr/local/python3/lib/python3.6/site-packages Requires: urllib3 Required-by: [root@yoyo chrome]#
運行selenium代碼
新建一個test_demo.py文件,運行測試代碼
from selenium import webdriver from selenium.webdriver.chrome.options import Options chrome_options = Options() chrome_options.add_argument('--headless') # 無界面 chrome_options.add_argument('--no-sandbox') # 解決DevToolsActivePort文件不存在報錯問題 chrome_options.add_argument('--disable-gpu') # 禁用GPU硬件加速。如果軟件渲染器沒有就位,則GPU進程將不會啟動。 chrome_options.add_argument('--disable-dev-shm-usage') chrome_options.add_argument('--window-size=1920,1080') # 設置當前窗口的寬度和高度 driver = webdriver.Chrome('chromedriver',chrome_options=chrome_options) #driver = webdriver.Chrome() driver.get("https://www.cnblogs.com/yoyoketang/") print(driver.page_source) driver.quit()
運行代碼
python3 test_demo.py
頁面出現“上海-悠悠”博客首頁的內容,上面運行成功了
Copyright © 2019 上海-悠悠
<br><span id="poweredby">Powered by .NET Core 3.0.0-preview9-19423-09 on Linux</span> </div><!--end: footer --> </div><!--end: home 自定義的最大容器 --> </body></html>
linux上運行selenium效率會提升很多喲!