使用硒加载铬延伸

D D*_*ane 13 selenium google-chrome-extension google-chrome-devtools selenium-webdriver

我想要的只是从网上商店加载chrome扩展程序.我做了很多搜索来弄明白,但只知道我们可以从本地机器加载扩展.我真的很想知道selenium是否具有从网上商店或网址加载扩展程序的功能.

请让我知道我正在尝试使用硒?

par*_*dak 16

我不确定为什么你特别关注从Webstore下载然后安装到Chrome.

我找到了一些下载Chrome扩展程序的步骤:

- 如果计算机已连接到互联网,请从扩展程序页面安装扩展程序:https:
//chrome.google.com/webstore/detail/ - 导航到扩展程序源代码.在XP中可以找到:C:\ Documents and Settings \\ Local Settings\Application Data\Google\Chrome\User Data\Default\Extensions\
- 您应该看到一个版本文件夹(即"0.0.21_0").复制此文件夹并将其移动到要安装的计算机上.
- 在已断开连接的计算机上打开chrome并转到扳手 - >工具 - >扩展
- 单击开发人员模式旁边的+以显示开发人员选项
- 单击'包扩展名...'并选择版本文件夹作为根目录.将私钥文件留空.这将在版本文件夹中创建.crx文件以及私钥,就像您是开发人员一样.

- 要么 -

1-找到您感兴趣的扩展程序的ID.在扩展程序的详细信息页面上,它将类似于:https ://chrome.google.com/webstore/detail/之后的bfbmjmiodbnnpllbbbfblcplfjjepjdn

2-将其粘贴到任何其他浏览器(不是Chrome):https: //clients2.google.com/service/update2/crx ?response = redirect&x = id%3D ~~~~%26uc

3-并用扩展ID替换~~~~.系统将提示您保存CRX文件.将此文件拖到Chrome窗口并继续安装.

来源:https://productforums.google.com/forum/#!topic/ chrome/ g02KlhK12fU

最后,使用ChromeOptions中下载的.crx文件加载扩展程序

ChromeOptions options = new ChromeOptions();
options.addExtensions(new File("/path/to/extension.crx"));
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(ChromeOptions.CAPABILITY, options);
ChromeDriver driver = new ChromeDriver(capabilities);
Run Code Online (Sandbox Code Playgroud)

资料来源:https://sites.google.com/a/chromium.org/chromedriver/extensions

  • 2017 年回来,似乎链接方法不再有效。有人可以确认吗? (5认同)

小智 11

我用Python做到了这一点,以防有人在看。

您所需要做的就是下载.crx文件(我使用了https://chrome-extension-downloader.com/)并将其保存在Python可以访问的位置。在我的示例中,我将其导入到与Python脚本相同的文件夹中,以加载exampleOfExtensionDownloadedToFolder.crx。

from selenium import webdriver 
from selenium.webdriver.chrome.options import Options 

options = webdriver.ChromeOptions()
options.add_extension('./exampleOfExtensionDownloadedToFolder.crx')
driver = webdriver.Chrome(chrome_options=options) 
driver.get('http://www.google.com')
Run Code Online (Sandbox Code Playgroud)


Kha*_*aad 11

以下是如何将 chrome 扩展加载到 chrome Selenium Python

日期 = 20-12-19
Chrome 版本 = 79.0.3945.88

新版本的 Chrome 支持 crx.crx (crx3),如果你使用 crx 会抛出错误。
如果您使用的是 chrome 73 或更高版本,则只需执行此步骤


1> 创建一个 crx3 文件。

1. 前往 Chrome 网上应用店并搜索您的扩展程序,复制扩展程序的链接。 屏幕截图
2. 转到此站点并粘贴链接并下载 Chrome 扩展程序的 crx 文件。
3. 转到GitHub 页面并下载将您的 crx 文件转换为 crx3 或 crx.crx 的模块。
4. 现在你有你的 crx.crx 或 (crx3) 文件


**2> 在 selenium 中添加 chrome 扩展的 Python 代码**

1. 将您的 extension.crx.crx 文件与您的代码放在同一文件夹中或提供路径
2. 您可以复制粘贴此代码,只需在 `chrome_options.add_extension(' YOUR - EXTENSION -名称')`

import os
    from selenium import webdriver
    from selenium.webdriver.chrome.options import Options
    
    
    executable_path = "/webdrivers"
    os.environ["webdriver.chrome.driver"] = executable_path
    
    chrome_options = Options()

    chrome_options.add_extension('  YOUR - EXTIONTION  - NAME    ')
    
    driver = webdriver.Chrome(chrome_options=chrome_options)
    driver.get("http://stackoverflow.com")
Run Code Online (Sandbox Code Playgroud)

  • 这是一个很好的答案,应该会在 2020 年被接受。非常感谢! (3认同)

小智 7

  1. 如果要按照此操作并获得成功结果,请将chromedriver exe放入文档文件中.

  2. 从Google下载"GET CRX"扩展程序.

  3. 下载您的扩展(即我的"DHS"用于Rest API测试).

  4. 转到Chrome网上应用店>>搜索您的扩展程序(您已经下载的扩展程序)>>右键单击它并单击:: GET CRX
    (这应该下载CRX文件.对于我的情况,CRX文件是"extension_1_2_5". CRX")

  5. 将CRX文件放在任何Chrome窗口中(这可以拒绝它,但不用担心).

  6. 现在,构建您的测试并执行

    public static void openChromeExtension(){
    
        System.setProperty("webdriver.chrome.driver", "/Users/[your local name]/Documents/chromedriver");
    
        ChromeOptions options = new ChromeOptions();
        options.addExtensions(new File("/Users/[your local name]/Documents/extension_1_2_5.crx"));
    
        DesiredCapabilities capabilities = new DesiredCapabilities();
        capabilities.setCapability(ChromeOptions.CAPABILITY, options);
        ChromeDriver driver = new ChromeDriver(capabilities);
        System.out.println("Opening extension");
        driver.get("chrome-extension://**aejoelaoggembcahagimdiliamlcdmfm**/dhc.html"); 
    
        driver.navigate().refresh();
        System.out.println("Refresh successfully");
    }
    
    Run Code Online (Sandbox Code Playgroud)

    //这是扩展程序网址,或者您可以在chrome:// extensions /上找到ID,找到扩展程序并复制ID.但是,URL必须是扩展URL.


归档时间:

查看次数:

40046 次

最近记录:

6 年,4 月 前