selenium(六)Headless Chrome/Firefox--PhantomJS停止支持後,使用無界面模式。
阿新 • • 發佈:2018-02-14
phantomjs alt 頁面 gradient isp lease isa display 功能
簡介:
以前都用PhantomJS來進行無界面模式的自動化測試,或者爬取某些動態頁面。
但是最近selenium更新以後,‘Selenium support for PhantomJS has been deprecated, please use headless ‘
提示不支持PhantomJs,請使用headless模式。
好吧,我們還是繼續使用firefox chrome的headless模式吧。
一:版本確認
1.windows下
selenium 3.9.0
我使用這個版本的selenium,已經提示停止支持了。你能查到這個文章,證明你的版本也不會太低。
firefox 58.0.2 (64 位)
這個是長期支持版,沒用最新版,有些功能貌似不穩定,還經常更新。
chrome 版本 64.0.3282.119(正式版本) (64 位)
這個就隨便跟隨應用管家升級的,畢竟連不上google的升級服務器。
python 3.6.3 amd64
確實是這個版本。
2.linux
還沒測試。過幾天部署一個linux項目,再給大家分享版本。
二:firefox headless模式
from selenium import webdriver options = webdriver.FirefoxOptions() options.set_headless() # options.add_argument(‘-headless‘)options.add_argument(‘--disable-gpu‘) driver=webdriver.Firefox(firefox_options=options) driver.get(‘http://httpbin.org/user-agent‘) driver.get_screenshot_as_file(‘test.png‘) driver.close()
實例化FirefoxOptions
用set_headless
或add_headless
實例化firefox瀏覽器的時候,增加參數firefox_options=options
這樣就可以了。
‘--disable-gpu‘這句是禁用GPU加速。
三:chrome headless模式
from selenium import webdriver options=webdriver.ChromeOptions() options.set_headless() # options.add_argument(‘--headless‘) options.add_argument(‘--disable-gpu‘) driver=webdriver.Chrome(options=options) driver.get(‘http://httpbin.org/user-agent‘) driver.get_screenshot_as_file(‘test.png‘) driver.close()
和上面firefox一樣。
selenium(六)Headless Chrome/Firefox--PhantomJS停止支持後,使用無界面模式。