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

问题描述

我正在尝试无头实现 Python Selenium Chrome,我有下面的代码片段。当我在没有 headless 选项的情况下尝试相同的代码时,我可以看到浏览器启动以及控制台上的当前 url。但是当我使用 headless 选项时,这会进入陈旧状态,我在控制台上看不到当前的 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

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

解决方法

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

代替:

options.add_argument("headless")

使用:

options.add_argument('--headless')

而不是:

print("browser.current_url")

使用:

print(browser.current_url)
,

您可以尝试以下操作,每次都会检查并安装最新版本的 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)