我打开启用了Browsec扩展程序的Chrome浏览器的所有努力都失败了。这是我最后尝试的 -
# Configure the necessary command-line option.
options = webdriver.ChromeOptions()
options.add_argument(r'--load-
extension=C:\Users\lap0042\AppData\Local\Google\Chrome\User
Data\Default\Extensions\omghfjlpggmjjaagoclmmobgdodcjboh')
# Initalize the driver with the appropriate options.
driver = webdriver.Chrome(chrome_options=options)
driver.get("http://stackoverflow.com")
这导致错误“无法加载扩展名。清单文件丢失或不可读”
在搜索到这个错误之后,我得到Manifest.json文件应该重命名为manifest.json.txt,但这样做会导致同样的错误。
任何帮助都将受到高度赞赏
答案 0 :(得分:1)
要使用任何扩展程序打开Chrome浏览器,您需要通过add_extension()
类的实例使用chrome.options
方法,并且可以使用以下解决方案:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
chrome_options = Options()
chrome_options.add_extension(r'C:\path\to\extension.crx')
driver = webdriver.Chrome(chrome_options=chrome_options, executable_path=r'C:\Utility\BrowserDrivers\chromedriver.exe')
driver.get('https://www.google.co.in')
print("Page Title is : %s" %driver.title)
driver.quit()
您可以在ChromeDriver - WebDriver for Chrome
页面的 Using the ChromeOptions class
部分找到该文档。
答案 1 :(得分:0)
使用此代码获取扩展程序
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
ChromeOptions options = new ChromeOptions();
options.addExtensions(new File("/pathtoChromeextension.crx")); //adding
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(ChromeOptions.CAPABILITY, options);
ChromeDriver driver = new ChromeDriver(capabilities);
使用以下内容获取crx文件 http://crxextractor.com/来自你的扩展ID,即omghfjlpggmjjaagoclmmobgdodcjboh
答案 2 :(得分:0)
对于Python,您需要wright路径来manifest.json文件
from selenium.webdriver.chrome.options import Options
from selenium import webdriver
path = os.path.dirname(r"C:\temp\mdnleldcmiljblolnjhpnblkcekpdkpa\19.5.1.10_0\manifest.json")
options = Options()
options.add_argument(f"--load-extension={path}")
driver = webdriver.Chrome(options=options)
答案 3 :(得分:0)
据我所知,最简单的答案 - 在您引用的位置的子文件夹中显示(例如 3.28.2_0' 或任何最新版本的扩展程序......)
这假设您正在使用 'options.add_argument('--load-extension=')...
对于 options.add_extension('参考 crx 文件 .crx')