我想知道为什么会收到以下错误消息以及如何修复它:
Traceback (most recent call last): File "teste.py", line 30, in <\module>
main()
File "teste.py", line 24, in main
driver = connectFirefox(defineOptions())
File "teste.py", line 18, in connectFirefox
driver = webdriver.Firefox(firefox_options=options)
File "/usr/lib/python3.6/site-packages/selenium/webdriver/firefox /webdriver.py", line 125, in init
if options.binary is not None:
AttributeError: 'Options' object has no attribute 'binary'
我的代码:
from selenium import webdriver
from selenium.webdriver.firefox.options import Options
from selenium.webdriver.chrome.options import Options
def defineOptions():
options = Options()
options.add_argument("--headless")
return options
def connectChrome(options):
chromeDriverPath = "/usr/bin/chromedriver"
driver = webdriver.Chrome(chromeDriverPath, chrome_options=options)
print("Chrome Headless Browser Invoked")
return driver
def connectFirefox(options):
driver = webdriver.Firefox(firefox_options=options)
print("Firefox Headless Browser Invoked")
return driver
def main():
#driver = connectChrome(defineOptions())
driver = connectFirefox(defineOptions())
driver.get("https://www.archlinux.org/")
print("Headless Browser closing")
driver.quit()
#------------------------------------------------------------------------#
main()
我想做的是编写一段代码,让我可以轻松选择 Chrome 或 Firefox headless。
最佳答案
我解决了我的问题。代码如下:
from selenium import webdriver
from selenium.webdriver.firefox.options import Options as FirefoxOptions
from selenium.webdriver.chrome.options import Options as ChromeOptions
def connectChrome():
options = ChromeOptions()
options.add_argument("--headless")
chromeDriverPath = "/usr/bin/chromedriver"
driver = webdriver.Chrome(chromeDriverPath, chrome_options=options)
print("Chrome Headless Browser Invoked")
return driver
def connectFirefox():
options = FirefoxOptions()
options.add_argument("--headless")
driver = webdriver.Firefox(firefox_options=options)
print("Firefox Headless Browser Invoked")
return driver
def main():
#driver = connectChrome()
driver = connectFirefox()
driver.get("https://www.archlinux.org/")
print("Headless Browser closing")
driver.quit()
#------------------------------------------------------------------------#
main()
关于python - 无法调用 Firefox Headless,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50414007/