python - 在 Chromium Selenium 和 Python3 中使用自定义过滤器加载 ublock

标签 python selenium selenium-webdriver google-chrome-extension

我正在开发一个抓取脚本来收集 authwall 后面的一些数据,我在 ublock 中有一个自定义过滤器,它可以让我通过 authwall 但是当我使用 Selenium 用 ublock 加载 Chrome 时,它没有过滤器。如果有帮助,我正在使用 Linux。

我试过在获取信息之前让它暂停,以便我检查过滤器到位,但它是空白的。

这是代码的一部分

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


    chrome_option_settings = Options()
    chrome_option_settings.add_argument('--window-size=1920x1080')
    extension_path = r'/home/user/.config/chromium/Default/Extensions/cjpalhdlnbpafiamejdnhcphjbkeiagm/1.20.0_0'
    chrome_option_settings.add_argument('load-extension='+extension_path)


    chrome_driver = "/usr/bin/chromedriver"
    driver = webdriver.Chrome(chrome_options=chrome_option_settings, executable_path=chrome_driver)
    driver.get(url)

我也尝试使用任一方法加载 Chrome 配置文件,但都没有帮助。
    chrome_options.add_argument("user-data-dir=/home/user/.config/chromium/Default")

或者
    chrome_options.add_argument("--profile-directory=/home/user/.config/chromium/Default")

任何帮助将不胜感激

最佳答案

您可以尝试使用 Options() 并使用 ublock 的路径调用 add_extension,希望这会有所帮助

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

chrome_options = Options()
executable_path = "path_to_webdriver"
extension_path = r'/home/user/.config/chromium/Default/Extensions/cjpalhdlnbpafiamejdnhcphjbkeiagm/1.20.0_0'

chrome_options.add_extension(extension_path)

driver = webdriver.Chrome(executable_path=executable_path, chrome_options=chrome_options) 

关于python - 在 Chromium Selenium 和 Python3 中使用自定义过滤器加载 ublock,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56837332/

相关文章:

java - 有没有办法隐式等待加载 Block UI 类?

java - 在junit4中执行测试方法

javascript - 无法使用带有 PageFactory 的 Selenium Java 选择下拉元素

python - 在大数据集上使用 csv 来分隔参数时遇到问题

python-3.x - 如何在python中使用selenium下载文件?

python - 遍历 send_keys 列表(Selenium 和 Python)

java - 您好,我在 Eclipse 中进行 Selenium 测试的代码有问题

python - 如何从命令行使用 Scrapy 传递表单数据?

python - Pandas read_csv : Ignore second header line

python - cv2.ml_KNearest 对象没有属性 find_nearest