我是使用网络驱动程序的新手,但我遵循了此处提到的内容(如何使用未打包的扩展程序启动 Chrome?)以及我可以从其他网络搜索中获得的所有内容。
我正在尝试测试我开发的 chrome 扩展,但我无法弄清楚如何启动加载了扩展的 chrome。这是我到目前为止所拥有的,如果有人能告诉我代码的问题(我成功使用 webdriver 启动 Chrome),我将不胜感激:
import time
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
browser = webdriver.Chrome() browser.get('http://seleniumhq.org/')
ChromeOptions options = new ChromeOptions();
options.addArguments("load-extension=C:\Users\mave\Desktop\Browser_Extension_Feature\extension_v5");
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(ChromeOptions.CAPABILITY, options);
ChromeDriver driver = new ChromeDriver(capabilities);
time.sleep(15)
browser.quit()
我终于能够弄清楚如何运行解压的扩展,并将此代码留给将来遇到类似问题的任何人:
import time
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
chrome_options = Options()
chrome_options.add_argument("load-extension=C:\Users\mave\Desktop\Browser_Extension_Feature\extension_v5");
browser = webdriver.Chrome(chrome_options=chrome_options)
browser.get('http://www.seleniumhq.org/')
time.sleep(5)
browser.quit()
此代码应该允许您根据需要运行解压的扩展,自 2023 年 9 月起运行。
值得一提的是,扩展的路径似乎必须以绝对路径的形式提供,并且不能是相对于当前工作目录或类似路径的路径。
在此示例中,假设扩展程序解压在非压缩文件夹中。
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
PATH_TO_CHROME_EXTENSION_DIR = r"C:\your\path\here"
options = Options()
options.add_extension(f"--load-extension={PATH_TO_CHROME_EXTENSION_DIR}")
driver = webdriver.Chrome(chrome_options=options)
driver.get('https://www.google.com/')
input("press enter to end programme")
driver.quit()