我正在使用2.33
Chrome驱动程序并尝试访问HTML中定义的变量<script>var foo = "bar";</script>
,如下所示:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
chrome_options = Options()
#chrome_options.add_argument("--headless")
chrome_options.add_argument("--disable-gpu")
chrome_options.add_argument("--window-size=1920x1080")
chrome_options.add_argument("--enable-javascript")
driver_path = '<path>'
driver = webdriver.Chrome(chrome_options=chrome_options, executable_path=driver_path)
driver.get("<url>")
driver.execute_script("return window.foo")
它工作正常。但是,如果取消注释chrome_options.add_argument("--headless")
,则返回None
(如果我尝试返回$
,则会抛出unknown error: $ is not defined
)。
为什么使用无头模式会以这种方式影响结果?