Wol*_*lfy 6 python browser testing selenium-webdriver microsoft-edge
我正在尝试将 pythons selenium 用于 Microsoft Edge,但我不断收到此错误:
WebDriverException:消息:未知错误:找不到 Microsoft Edge 二进制文件
我下载了最新版本的边缘驱动程序。这是我的代码:
from selenium import webdriver
from selenium.webdriver.remote import webelement
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support import expected_conditions as EC
import pandas as pd
import time
from bs4 import BeautifulSoup
import os
from datetime import datetime
from selenium.webdriver import ActionChains
driver = webdriver.Edge(executable_path = 'C:\\Users\\Downloads\\edgedriver_win32\\msedgedriver.exe')
def get_trulia_estimate(address):
driver.get('https://www.trulia.com/')
print(address)
element = (By.ID, 'homepageSearchBoxTextInput')
WebDriverWait(driver, 10).until(EC.element_to_be_clickable(element)).click()
WebDriverWait(driver, 10).until(EC.element_to_be_clickable(element)).send_keys(address)
search_button = (By.CSS_SELECTOR, "button[data-auto-test-id='searchButton']")
WebDriverWait(driver, 50).until(EC.element_to_be_clickable(search_button)).click()
time.sleep(3)
Run Code Online (Sandbox Code Playgroud)
小智 7
这篇文章现在已经很老了,但希望我可以帮助任何将来偶然发现同样问题的人!
问题是您使用了错误的网络驱动程序。Edge 存在两个不同的版本,在两个不可互换的引擎上实现:Chromium Edge 和 EdgeHTML(撰写本文时的默认版本)。这两个版本都有一个与之关联的不同网络驱动程序,Chromium Edge 为“msedgedriver.exe”,EdgeHTML 为“MicrosoftWebDriver.exe”。
您正在使用 EdgeHTML 版本的 Edge,同时尝试运行 Chromium Edge Webdriver。Selenium 吐出的“找不到 Microsoft Edge 二进制文件”错误就是由此而来。
幸运的是,安装正确的网络驱动程序很容易。如果您有 Edge 17 或更早版本,可以在此处安装驱动程序。确保下载 EdgeHTML 驱动程序,而不是 Chromium 驱动程序,并将其添加到您的 PATH 中。对于 Edge 18 及更高版本,您无需下载任何内容。只需在命令提示符中运行命令:DISM.exe /Online /Add-Capability /CapabilityName:Microsoft.WebDriver~~~~0.0.1.0。
| 归档时间: |
|
| 查看次数: |
51060 次 |
| 最近记录: |