python+selenium通过加载配置文件的方式启动带有tampermonkey的firefox
fp = webdriver.FirefoxOptions()
fp.binary_location = r"..\Firefox\firefox.exe" # 指定firefox路径
fp.profile = r"..\firefox-profiles-handler" #指定配置文件夹路径
fp.set_preference('permissions.default.image', 2) # 不加载图片
driver = webdriver.Firefox(options=fp) #启动firefox
配置文件夹中已经包含了tampermonkey的相关文件
启动后会发现自动打开了新标签,提示tampermonkey已更新成功,影响了后续的操作,如关闭firefox
比对文件后发现,在配置文件夹的prefs.js中有
user_pref("extensions.lastAppBuildId", "20220411174855");
删除这一行,或删除值,就不会显示更新页
user_pref("extensions.lastAppBuildId", "");
因后续还会修改配置文件,prefs.js会自动修改,为了确保这个值为空,在python中加入设置
fp = webdriver.FirefoxOptions()
fp.binary_location = r"..\Firefox\firefox.exe"
fp.profile = r"..\firefox-profiles-handler"
fp.set_preference('permissions.default.image', 2) # 不加载图片
fp.set_preference('extensions.lastAppBuildId', '') # 防止油猴弹出新页面
driver = webdriver.Firefox(options=fp) #启动firefox
相关链接
https://stackoverflow.com/questions/63178337/browser-started-under-selenium-doesnt-use-addons