小编典典

NotADirectoryError:[Errno 20]不是目录:使用Python3的GeckoDrriver Firefox和Selenium的'/home / ghost / automation / pwd / geckodriver'

selenium

我正在使用pycharm和我的pythn

版本3.6.7点9.0.1

和selenium版本selenium-3.141.0 urllib3-1.24.1

我使用此命令安装selenium

pip3 install selenium

然后我这样编码

from selenium import webdriver

driver = webdriver.Firefox("/home/ghost/automation/pwd/geckodriver")

driver.set_page_load_timeout(30)
driver.get("https://www.google.com/")
driver.maximize_window()
driver.implicitly_wait(120)
driver.get_screenshot_as_file("google.png")
driver.quit()

当我运行这个时,我得到这个错误

/home/ghost/PycharmProjects/try/venv/bin/python /home/ghost/PycharmProjects/try/open/testcas1.py
Traceback (most recent call last):
  File "/home/ghost/PycharmProjects/try/open/testcas1.py", line 3, in <module>
    driver = webdriver.Firefox("/home/ghost/automation/pwd/geckodriver")
  File "/home/ghost/PycharmProjects/try/venv/lib/python3.6/site-packages/selenium/webdriver/firefox/webdriver.py", line 151, in __init__
    firefox_profile = FirefoxProfile(firefox_profile)
  File "/home/ghost/PycharmProjects/try/venv/lib/python3.6/site-packages/selenium/webdriver/firefox/firefox_profile.py", line 80, in __init__
    ignore=shutil.ignore_patterns("parent.lock", "lock", ".parentlock"))
  File "/usr/lib/python3.6/shutil.py", line 309, in copytree
    names = os.listdir(src)
NotADirectoryError: [Errno 20] Not a directory: '/home/ghost/automation/pwd/geckodriver'

Process finished with exit code 1

在这一行中 driver = webdriver.Firefox("/home/ghost/automation/pwd/geckodriver")
geckodriver 我的 geckodriver版本的 正确路径 是0.23.0


阅读 2186

收藏
2020-06-26

共1个答案

小编典典

虽然有工作 GeckoDriver火狐 ,你需要使用 密钥 executable_path 设置到 绝对路径
中的 GeckoDriver 单引号,即'...'用斜杠即/作为 路径分隔符 ,如下所示:

driver = webdriver.Firefox(executable_path='/home/ghost/automation/pwd/geckodriver')
2020-06-26