我是使用Python进行Selenium编程的新手。我打算在打开URL后使用switch_to.frame()和其他驱动程序函数。代码在没有--headless
参数的情况下工作正常,但是当我尝试无头地运行它时根本不执行。有人能帮帮我吗?
我尝试访问的URL通过单点登录工作,这在打开浏览器窗口时自动发生。这可能有问题吗?
我使用的是Python 3,Chrome浏览器版本62.0.3202.94和Selenium驱动版本2.31.488763。
这是我的代码:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
options = webdriver.ChromeOptions()
options.add_argument('--disable-gpu')
options.add_argument('--headless')
d = webdriver.Chrome(chrome_options=options)
d.get("myURL") #cannot display the actual URL for privacy
d.switch_to.frame('MyFrame')
d.switch_to.frame('MyWorkArea')
print("Done")
d.close()
注意:在正常运行浏览器时,代码工作正常,但在无头运行时,我得到了NoSuchFrameException。