運行此代碼時:
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from webdrivermanager.chrome import ChromeDriverManager
driver = webdriver.Chrome(ChromeDriverManager().download_and_install())
driver.get("http://www.python.org")
這會導致安裝 chromedriver 的行出現以下例外:
型別錯誤:預期的 str、bytes 或 os.PathLike 物件,而不是元組
請注意,我知道已經存在許多關于此主題的主題,但由于 webdrivermanager 似乎已主要更新,因此以前的解決方案不起作用。
還有一個簡短的說明:我通過 conda 而不是 pip 安裝了 webdrivermager。但這不應該引起關注。
編輯:整個堆疊跟蹤:
回溯(最近一次呼叫):檔案“C:\Users\stefa\OneDrive - Johannes Kepler Universit?t Linz\Dokumente\GitHub\briefly\src\crawler\crawler.py”,第 19 行,在 driver = webdriver.Chrome(ChromeDriverManager ().download_and_install()) 檔案“C:\Users\stefa\anaconda3\envs\briefly\lib\site-packages\selenium\webdriver\chrome\webdriver.py”,第 73 行,在init self.service.start( ) 檔案“C:\Users\stefa\anaconda3\envs\briefly\lib\site-packages\selenium\webdriver\common\service.py”,第 72 行,在 start self.process = subprocess.Popen(cmd, env= self.env,檔案“C:\Users\stefa\anaconda3\envs\briefly\lib\subprocess.py”,第 951 行,在init 中 self._execute_child(args, executable, preexec_fn, close_fds, File "C:\Users\stefa\anaconda3\envs\briefly\lib\subprocess.py", line 1360, in _execute_child args = list2cmdline(args) File "C:\ Users\stefa\anaconda3\envs\briefly\lib\subprocess.py”,第 565 行,在 list2cmdline for arg in map(os.fsdecode, seq): 檔案“C:\Users\stefa\anaconda3\envs\briefly\lib \os.py", line 822, in fsdecode filename = fspath(filename) # 是否對 .TypeError 進行型別檢查
filename:預期的 str、bytes 或 os.PathLike 物件,而不是元組
uj5u.com熱心網友回復:
您的代碼塊中有兩個問題,如下所示:
- 您需要從ChromeDriverManager匯入
webdriver_manager.chrome - 根據不支持Python 的 Webdriver Manager
download_and_install(),您必須使用install()
所以你的有效代碼塊將是:
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
driver = webdriver.Chrome(ChromeDriverManager().install())
driver.get("http://www.python.org")
在 視窗 10 系統控制臺輸出將是:
C:\Users\Admin\Desktop\Python Programs>python webdriver-manager_ChromeDriverManager.py
[WDM] -
[WDM] - ====== WebDriver manager ======
[WDM] - Current google-chrome version is 95.0.4638
[WDM] - Get LATEST driver version for 95.0.4638
[WDM] - There is no [win32] chromedriver for browser 95.0.4638 in cache
[WDM] - Get LATEST driver version for 95.0.4638
[WDM] - Trying to download new driver from https://chromedriver.storage.googleapis.com/95.0.4638.54/chromedriver_win32.zip
[WDM] - Driver has been saved in cache [C:\Users\Admin\.wdm\drivers\chromedriver\win32\95.0.4638.54]
DevTools listening on ws://127.0.0.1:50921/devtools/browser/c26df2aa-67aa-4264-b1dc-34d6148b9174
您可以在ModuleNotFoundError: No module named 'webdriver_manager' error even after installed webdrivermanager 中找到相關的詳細討論
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/342829.html
標籤:Python 硒 硒网络驱动程序 硒铬驱动器 网络驱动管理器
