python - 安装和运行 Selenium、Pycharm 时出错
问题描述
我刚刚安装了 selenium,当我进行 pip 检查 selenium 时,我看到以下内容:qdarkstyle 2.8.1 需要 helpdev,但未安装。spyder 4.1.4 有要求 pyqt5<5.13; python_version >= "3",但是你有 pyqt5 5.15.1。spyder 4.1.4 要求 pyqtwebengine<5.13; python_version >= "3",但是你有 pyqtwebengine 5.15.1。
当我尝试在 Pycharm 中运行一个基本程序(如下所示)时,我看到了异常:
import time
from selenium import webdriver
driver = webdriver.Chrome("../Drivers/chromedriver.exe")
driver.set_page_load_timeout(10)
driver.get("http://google.com")
driver.find_element_by_name("q").send_keys("Automation step by step")
driver.find_element_by_name("btnK").click()
time.sleep(2)
driver.close()
driver.quit()
print("Test")
--------------------
"/Applications/Python 3.8/IDLE.app/Contents/MacOS/Python" /Users/Anu/PycharmProjects/pythonProject3/Demo/test1.py
Traceback (most recent call last):
File "/Users/Anu/Library/Python/3.8/lib/python/site-packages/selenium/webdriver/common/service.py", line 72, in start
self.process = subprocess.Popen(cmd, env=self.env,
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/subprocess.py", line 854, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/subprocess.py", line 1702, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: '../Drivers/chromedriver.exe'
在处理上述异常的过程中,又出现了一个异常:
Traceback (most recent call last):
File "/Users/Anu/PycharmProjects/pythonProject3/Demo/test1.py", line 4, in <module>
driver = webdriver.Chrome("../Drivers/chromedriver.exe")
File "/Users/Anu/Library/Python/3.8/lib/python/site-packages/selenium/webdriver/chrome/webdriver.py", line 73, in __init__
self.service.start()
File "/Users/Anu/Library/Python/3.8/lib/python/site-packages/selenium/webdriver/common/service.py", line 81, in start
raise WebDriverException(
selenium.common.exceptions.WebDriverException: Message: 'chromedriver.exe' executable needs to be in PATH. Please see https://sites.google.com/a/chromium.org/chromedriver/home
解决方案
您的错误可能与您的 Chrome 驱动程序有关。您可以webdriver-manager
用于安装此模块使用pip install webdriver-manager
并将此行粘贴到您的脚本中
from webdriver_manager.chrome import ChromeDriverManager driver = webdriver.Chrome(ChromeDriverManager().install())
推荐阅读
- nginx - Amazon Linux 2 上的 PHP 8 和 Nginx
- heroku - Heroku 部署问题
- bios - 更新 SMBIOS 表
- django - 动态加载 django 模板
- python - 用 swig 包装 c++ 矢量引用
- ionic5 - ionic 4 ionViewWillEnter 不调用
- amazon-web-services - 有没有办法为两个集群配置一个 ALB?
- android - 构建失败可能是由于插件中的 AndroidX 不兼容
- java - debezium mysql 连接器因 java 堆空间问题而失败
- python-3.x - 在 SOAP 响应中禁用签名验证 (Zeep Python)