python - 无法将 foxyproxy 插件添加到 selenium 配置文件
问题描述
尝试将 FoxyProxy 扩展添加到 Firefox 驱动程序时,如下所示:
from selenium.webdriver import FirefoxProfile, DesiredCapabilities
from selenium import webdriver
profile =FirefoxProfile()
firefox_capabilities = DesiredCapabilities.FIREFOX
firefox_capabilities['marionette'] = False
profile.add_extension(extension='res/foxyproxy@eric.h.jung.xpi')
profile.set_preference("extensions.logging.enabled", True)
driver = webdriver.Firefox(profile,capabilities=firefox_capabilities)
一切似乎都很好,但是当窗口打开时,我看到 FoxyProxy 没有安装,浏览器控制台也会给出以下消息:
1566128038983 addons.xpi-utils DEBUG New add-on foxyproxy@eric.h.jung installed in app-profile
Blocklist::loadBlocklist: blocklist is disabled
1566128039076 addons.xpi-utils WARN Add-on foxyproxy@eric.h.jung is not correctly signed. 2
1566128039076 addons.xpi-utils WARN addMetadata: Add-on foxyproxy@eric.h.jung is invalid: Error: Extension foxyproxy@eric.h.jung is not correctly signed(resource://gre/modules/addons/XPIDatabase.jsm:2452:17) JS Stack trace: addMetadata@XPIDatabase.jsm:2452:17
processFileChanges@XPIDatabase.jsm:2809:26
checkForChanges@XPIProvider.jsm:2728:55
startup@XPIProvider.jsm:2265:12
callProvider@AddonManager.jsm:193:31
_startProvider@AddonManager.jsm:569:5
startup@AddonManager.jsm:725:14
startup@AddonManager.jsm:2797:26
observe@addonManager.js:65:29
这意味着扩展名未正确签名。该xpi
文件是直接从我的普通配置文件扩展文件夹中购买的,所以我不明白为什么会出现此警告?它实际上是安装失败的根源吗?
解决方案
只是把我的头撞在这个上面很长时间。add_extension 不是很亮。它会自动将 unpack=True 传递给 _install_extension,并且解包会撤消任何签名工作,因此会出现错误。
尝试使用 unpack=False 直接调用 _install_extension :
from selenium.webdriver import FirefoxProfile, DesiredCapabilities
from selenium import webdriver
profile =FirefoxProfile()
firefox_capabilities = DesiredCapabilities.FIREFOX
firefox_capabilities['marionette'] = False
profile._install_extension('res/foxyproxy@eric.h.jung.xpi', unpack=False)
profile.set_preference("extensions.logging.enabled", True)
driver = webdriver.Firefox(profile,capabilities=firefox_capabilities)
推荐阅读
- selenium - 我可以使用 selenium 在网站上单击此元素吗?
- javascript - Greasemonkey - 使用来自其他用户脚本的一个用户脚本(作为 js 库)
- python - 计算我在列表python中删除元素的次数
- javascript - Playwright - 查找多个元素或类名
- python-3.x - 如何让我的 python 脚本根据其设置的模式确定数字是整数还是浮点数?
- powershell - PowerShell 可以替换使用 -clike 找到的区分大小写的文本部分吗?
- if-statement - 'type' object is not subscriptable - IF LOOP ERROR
- python - Sentiment analysis comparing two lists assigning sentiment scores
- python-3.x - TypeError while programming a discord bot
- highcharts - Can we minimize the space between y-axis point's of Dumbbell chart?