簡體   English   中英

Python,網絡驅動程序錯誤(Selenium)

[英]Python, error with web driver (Selenium)

    import time
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.keys import Keys

driver = webdriver.Chrome()
driver.get('http://arithmetic.zetamac.com/game?key=a7220a92')
element = driver.find_element_by_link_text('problem')
print(element)

我收到錯誤:

FileNotFoundError: [Errno 2] No such file or directory: 'chromedriver'

我不確定為什么會發生這種情況,因為我已經導入了硒。

您要么在 webdriver.Chrome 中提供 ChromeDriver 路徑,要么提供路徑變量

from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.keys import Keys
driverLocation = 'D:\Drivers\chromedriver.exe' #if windows
driver = webdriver.Chrome(driverLocation) 
driver.get('http://arithmetic.zetamac.com/game?key=a7220a92')
element = driver.find_element_by_link_text('problem')
print(element)

在不改變單行代碼的情況下消除此異常的最佳方法是將 chromedriver.exe(或其他瀏覽器驅動程序文件)添加到 Python 中

  1. windows 的 site_packages/scripts 目錄
  2. Linux 的 dist_package/scripts

請檢查此解決方案,它有效。

如果您使用的是 Mac,則不要包含“.exe”,我將 selenium 包直接放入我稱為“SpeechRecognition”的 Pycharm 項目中。 然后在 selenium 文件中,導航到:/selenium/webdriver/chrome,然后復制並粘貼您最有可能從 [此處][1] 下載的“chromedriver.exe”文件。如果您使用的是 PyCharm IDE 或類似軟件,請嘗試使用此腳本。 這應該會為您打開一個新的 Google 窗口。

from selenium import webdriver
from selenium.webdriver.common.keys import Keys

browser = webdriver.Chrome('/Users/Name/PycharmProjects/SpeechRecognition/selenium/webdriver/chrome/chromedriver')
browser.get('http://www.google.com')

然后如果你想在谷歌上自動搜索一個項目,在下面添加這些行並運行。 您應該會看到一個自動 google 搜索窗口打開。 它可能會很快消失,但要阻止它,您可以根據需要簡單地添加一個 while 循環或一個計時器

search = browser.find_element_by_name('q')
search.send_keys('How do I search an item on Google?')
search.send_keys(Keys.RETURN)


  [1]: https://sites.google.com/a/chromium.org/chromedriver/home

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM