Python selenium chromedirver( headless )使用代理(IPV6)和身份验证

标签 python selenium proxy selenium-chromedriver proxies

我有需要用户名和密码才能工作的 IPV6 代理, 有什么办法可以在 ChromeDriver ( Headerless ) 中使用用户名和密码来使用这些代理。

代理格式 - ip_address:port 用户名:密码

如果没有,那么我可以使用这些代理更改我的系统 ipv6 地址,以便 ChromeDriver 默认使用系统 IP 地址。

最佳答案

您可以创建简单的扩展来设置代理和处理授权

list .json

{
    "manifest_version": 2,
    "name": "Chrome Proxy Auth",
    "version": "1.0.0",
    "permissions": [
        "proxy",
        "tabs",
        "unlimitedStorage",
        "storage",
        "<all_urls>",
        "webRequest",
        "webRequestBlocking"
    ],
    "background": {
        "scripts": ["background.js"]
    }
}

background.js 编辑host, port, username, password

var config = {
  mode: "fixed_servers",
  rules: {
    singleProxy: {
      host: "XXX.XXX.XXX.XXX",
      port: parseInt(8888)
    }
  }
};

chrome.proxy.settings.set({
  value: config,
  scope: "regular"
}, function() {});

function callbackFunc(details) {
  return {
    authCredentials: {
      username: "............",
      password: "............"
    }
  };
}

chrome.webRequest.onAuthRequired.addListener(
  callbackFunc, {
    urls: ["<all_urls>"]
  },
  ['blocking']
);

将这两个文件添加到 .zip 存档,然后在您的 python 脚本中

options = Options()
options.add_extension('/path/top/extension.zip')

driver = webdriver.Chrome(options=options)

关于Python selenium chromedirver( headless )使用代理(IPV6)和身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53555426/

相关文章:

python - 迭代从 excel 文件列创建的 pandas 数据框时出错

python - 从固定数量的项目创建随机顺序的组合列表

python - 来回循环 Python

windows - 如何在 Windows XP 中转发进程的 TCP/IP 流量?

Java IP地址代理

Python itertools 排列如何包含重复字符

python - 解析 Quora 中包含代码的答案

javascript - 没有特定子项的 Protractor 过滤器元素

java - 如何使用 selenium.WebDriver 和 HtmlUnitDriver 注销 Facebook

java代理和Web服务身份验证