我有以下代码:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
options = Options()
options.add_argument('--headless')
options.add_argument('--disable-gpu')
driver = webdriver.Chrome("chromedriver.exe", chrome_options=options)
driver.get("*some site*")
当我开始调试时,它停留在driver.get("*some site*")
行。它根本不会启动任何事情。
有什么建议吗?
一切都是最新的。使用Windows 7。
编辑:使用Python 3.6
编辑2:hope its helpful
答案 0 :(得分:0)
尝试使用此选项运行,对我(在我的win机器上)--no-sandbox帮助。 --log-path和verbose显然有助于调试。
ch_options.add_argument('--headless')
ch_options.add_argument('--disable-gpu')
ch_options.add_argument('--no-sandbox')
ch_options.add_argument('--log-path=chromedriver.log')
ch_options.add_argument('--verbose')
和用户代理(如果某些网站抗议):
ch_options.add_argument(
'--user-agent="valid user agent :)"')
并开始:
driver = webdriver.Chrome(chrome_options=ch_options)
我的chromedriver在PATH环境变量中,所以不需要在这里传递可执行文件。
顺便说一句。 phantomjs驱动程序不再更新,所以尝试解决此问题并切换到chromedriver。即对我来说,phantomjs驱动程序甚至不会让我更改用户代理,只是在python绑定上。