我最近将我的 mac 机器升级到 OS Catalina(v 10.15.3)。升级后,我无法使用 selenium 启动 chrome 驱动程序。
当我运行 selenium 代码来启动 chrome 浏览器时,我面临以下错误。
“无法打开“chromedriver”,因为无法验证开发人员”。“macOS 无法验证此应用程序是否没有恶意软件。”
请帮我!
我正在尝试将chromedriver从2.30更新到2.35.但是,在我之后brew install chromedriver,默认的chromedriver仍然是2.30.如果我重做brew,它会告诉我我已经安装了2.35版本,但是当我使用时chromedriver --version,它仍然显示2.30.任何人都可以告诉我为什么会这样吗?我可以知道这个brew安装在哪里吗?
谢谢!
产量brew list chromedriver:
/usr/local/Cellar/chromedriver/2.35/bin/chromedriver
/usr/local/Cellar/chromedriver/2.35/homebrew.mxcl.chromedriv??er.plist
Run Code Online (Sandbox Code Playgroud)
和输出which chromedriver显示它在其他路径中使用版本2.30.
我在使用硒进行网络抓取时遇到了很多问题webdriver。它chromedriver已经安装并放置在与 python 文件相同的文件夹中。所有似乎加载 jupyter 单元几秒钟的建议都在收到以下消息后被拒绝:chromedriver cannot opened because the developer cannot be verififed我曾经homebrew下载它们。这是我的代码:
from bs4 import BeautifulSoup as soup
import pandas as pd
from selenium import webdriver
my_url='google.com'
driver= webdriver.Chrome()
Run Code Online (Sandbox Code Playgroud)
我现在尝试通过下载 chromium 来解决这个问题,但是我遇到了这个status code was 9错误,并且弹出窗口告诉我我的代码不可信。
我的 Capybara Selenium Webdriver 设置在尝试连接 ChromeDriver 时失败 - 看来他们发布了一个没有 M1 版本的版本,可以在 Chromedriver API 中找到https://chromedriver.storage.googleapis.com/index.html?path=106.0.5249.61/
Webdrivers::NetworkError:
Net::HTTPServerException: 404 "Not Found" with https://chromedriver.storage.googleapis.com/106.0.5249.61/chromedriver_mac64_m1.zip
Run Code Online (Sandbox Code Playgroud)
Capybara.register_driver :headless_chrome do |app|
options.add_argument("--disable-gpu")
options.add_argument("--headless")
options.add_argument("--no-sandbox")
options.add_argument("--window-size=1920,1080")
driver = Capybara::Selenium::Driver.new(app, browser: :chrome, options: options)
### Allow file downloads in Google Chrome when headless
### https://bugs.chromium.org/p/chromium/issues/detail?id=696481#c89
bridge = driver.browser.send(:bridge)
path = "/session/:session_id/chromium/send_command"
path[":session_id"] = bridge.session_id
bridge.http.call(:post, path, cmd: "Page.setDownloadBehavior",
params: {
behavior: "allow",
downloadPath: "/tmp/downloads",
})
###
driver
end
Run Code Online (Sandbox Code Playgroud)
当应用程序调用时,driver.browser我收到上述错误,这是因为它正在查找的文件不存在。
我可以设置特定版本的 chrome 驱动程序或在初始化驱动程序时查找什么系统吗?
selenium ruby-on-rails capybara selenium-chromedriver selenium-webdriver