♛不见长安♛ 2025-08-29 17:11 采纳率: 28.6%
浏览 8

selenium出现这个问题





from selenium import webdriver
from selenium.webdriver.edge.service import Service


# 创建 Service 对象指定驱动路径
service = Service('msedgedriver.exe')


# 创建浏览器操作对象
browser = webdriver.Edge(service=service)


# 访问网站
url = 'https://www.baidu.com'
browser.get(url)

img

  • 写回答

5条回答 默认 最新

  • 檀越@新空间 2025-08-29 17:12
    关注

    下午好🌅🌅🌅
    本答案参考通义千问

    你提供的代码中,使用了 seleniumEdge 浏览器驱动,但可能会遇到一些错误。以下是一些常见问题及解决方案


    一、可能的错误及原因分析

    1. msedgedriver.exe 文件不存在或路径不正确

      • 确保 msedgedriver.exe 已下载并放置在项目目录中。
      • 或者将该文件放在系统环境变量 PATH 中。
    2. Selenium 版本与 Edge 驱动版本不兼容

      • 检查你的 Selenium 和 Microsoft Edge 驱动版本是否匹配。
    3. Microsoft Edge 浏览器未安装或版本过低

      • 确保已安装最新版 Microsoft Edge(Chromium 内核)。
    4. 缺少依赖库或 Python 环境配置问题

      • 确保 selenium 已正确安装。

    二、解决步骤(详细)

    1. 确保安装了正确的 Microsoft Edge WebDriver

    2. 确认 msedgedriver.exe 路径正确

    • msedgedriver.exe 放在与脚本相同的目录下,或者指定完整路径。

    3. 安装或更新 Selenium

    pip install selenium --upgrade
    

    4. 修改代码以确保兼容性

    下面是修改后的代码示例,确保兼容性和可运行性:

    from selenium import webdriver
    from selenium.webdriver.edge.service import Service
    
    # 指定 msedgedriver.exe 的路径
    service = Service('msedgedriver.exe')  # 如果文件在当前目录,直接写文件名即可
    
    # 创建浏览器操作对象
    browser = webdriver.Edge(service=service)
    
    # 访问网站
    url = 'https://www.baidu.com'
    browser.get(url)
    
    # 可选:等待一段时间后关闭浏览器
    import time
    time.sleep(5)
    browser.quit()
    

    注意: 如果 msedgedriver.exe 不在当前目录,请提供完整路径,例如:

    service = Service(r'C:\path\to\msedgedriver.exe')
    

    三、如果仍然报错,可以尝试以下方法

    1. 使用 executable_path 参数(旧版本语法)

    如果你使用的是较老版本的 Selenium(如 3.x),可以这样写:

    from selenium import webdriver
    
    # 指定驱动路径
    driver = webdriver.Edge(executable_path='msedgedriver.exe')
    
    # 打开网页
    driver.get('https://www.baidu.com')
    

    注意: 在 Selenium 4.x 中,executable_path 已被弃用,推荐使用 Service 类。


    四、常见错误示例及解决方式

    | 错误信息 | 解决方式 | |----------|----------| | No such file or directory: 'msedgedriver.exe' | 确认文件存在且路径正确 | | The browser seems to have exited unexpectedly | 检查 Edge 驱动和浏览器版本是否匹配 | | ModuleNotFoundError: No module named 'selenium' | 安装 pip install selenium |


    五、建议

    • 使用 Python 虚拟环境 来管理依赖,避免全局污染。
    • 使用 WebDriver Manager 自动下载合适的驱动(推荐):
    pip install webdriver-manager
    

    然后修改代码如下:

    from selenium import webdriver
    from webdriver_manager.microsoft import EdgeChromiumDriverManager
    
    # 自动下载并安装合适的 Edge 驱动
    driver = webdriver.Edge(EdgeChromiumDriverManager().install())
    
    # 打开网页
    driver.get('https://www.baidu.com')
    

    这个方法是最推荐的方式,无需手动下载驱动。


    总结

    • 确保驱动路径正确
    • 检查 Edge 浏览器和驱动版本是否匹配
    • 使用 Service 类创建浏览器实例
    • 推荐使用 webdriver-manager 自动管理驱动

    如有更多错误信息,欢迎继续提问!

    评论

报告相同问题?

问题事件

  • 创建了问题 8月29日