如何检查Python Selenium Chrome Headless是否正常工作?

How to check if Python Selenium Chrome headless is working?

提问人:Rahul S L 提问时间:6/7/2021 最后编辑:cruisepandeyRahul S L 更新时间:6/8/2021 访问量:659

问:

我正在尝试实现 Python Selenium Chrome 无头,我有下面的代码片段。当我在没有无头选项的情况下尝试相同的代码时,我可以看到浏览器启动以及控制台上的当前 URL。但是当我使用无头选项时,它会进入陈旧状态,并且在控制台上看不到当前 URL。

chromedriver = "<chrome-driver-path>"
options = Options()
options.add_exprimental_option("detach", True)
options.add_argument("headless")
options.add_argument("window-size=1920x1080")
browser = webdriver.Chrome(chromedriver, options=options)
browser.get("<url>")
print(browser.current_url)

注意:导入了所有必需的库

版本: 蟒蛇:3.8.3, 硒:3.141.0, 铬:81.0.4044.129

任何关于如何成功实施无头选项的指导都将真正有所帮助

python-3.x selenium google-chrome-headless chrome-web-driver

评论


答:

0赞 cruisepandey 6/7/2021 #1

尝试更新您的 chrome 并进行以下更改:Version 91.0.4472.77

而不是:

options.add_argument("headless")

用:

options.add_argument('--headless')

而不是:

print("browser.current_url")

用:

print(browser.current_url)

评论

0赞 Rahul S L 6/7/2021
对不起,print(“browser.current_url”)的错别字,尝试使用options.add_argument('--headless')没有多大帮助!正在观察同样的问题!
0赞 cruisepandey 6/7/2021
我已经试过了,实际上没关系。您需要删除双引号options.add_argument('--headless')options.add_argument("headless")
0赞 Rahul S L 6/7/2021
我尝试了 options.add_argument('--headless') ,options.add_argument(“headless”) 和 options.headless=True..但是我都面临着同样的问题!
0赞 cruisepandey 6/7/2021
您的 chrome 是 ,更新这个。我正在使用并且工作正常chrome: 81.0.4044.129Version 91.0.4472.77
1赞 Rahul S L 6/7/2021
知道了,让我试试吧!谢谢!
0赞 Maisum Abbas 6/8/2021 #2

您可以尝试以下方法,每次都会检查并安装最新版本的Chrome:

from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager

options = webdriver.ChromeOptions()
options.add_argument('--headless')
    
driver = webdriver.Chrome(ChromeDriverManager().install(), options=options)