分享页面
拖动logo到书签栏,立即收藏青果网络
控制台
|
登录/注册
子
用户在实名认证前无法开通业务
充值
未支付订单
未完成工单
未读消息
会员中心
退出登录
文档中心
产品介绍
使用指南
开发者指南
API接口
代码示例
常见问题
账户中心
查询
产品介绍
短效代理
产品介绍
提取方式
资源池
使用指南
API接口
隧道代理
产品介绍
使用指南
独享代理
产品介绍
地区锁功能
使用指南
API接口
长效代理
产品介绍
使用指南
API接口
短效代理(全球HTTP)
产品介绍
提取方式
使用指南
API接口
隧道代理(全球HTTP)
产品介绍
资源池
使用指南
短效代理
产品介绍
提取方式
弹性提取
按量提取
均匀提取
通道提取
企业定制
资源池
中转池
隧道池
使用指南
使用指南
开发者指南
API接口
弹性提取
API接口介绍
提取IP
查询余额
查询资源地区
按量提取
API接口介绍
提取IP
查询余额
查询资源地区
均匀提取
API接口介绍
提取IP
查询余额
查询资源地区
通道提取
API接口介绍
提取IP
查询在用IP
提取并查询资源
查询通道数
查询资源地区
隧道代理
产品介绍
使用指南
开发者指南
独享代理
产品介绍
地区锁功能
使用指南
使用指南
开发者指南
API接口
独享代理
API接口介绍
提取IP
查询在用IP
释放IP
替换IP
查询通道数
查询资源地区
独享代理(地区锁)
API接口介绍
提取IP
查询在用IP
释放IP
替换IP
查询资源地区
长效代理
产品介绍
使用指南
使用指南
开发者指南
API接口
API接口介绍
提取IP
查询在用IP
释放IP
查询通道数
查询资源地区
短效代理(全球HTTP)
产品介绍
提取方式
通道提取
按量提取
使用指南
使用指南
开发者指南
API接口
按量提取
API接口介绍
提取IP
查询在用IP
查询余额
查询国家
通道提取
API接口介绍
提取IP
查询在用IP
查询通道数
查询国家
隧道代理(全球HTTP)
产品介绍
资源池
住宅池
超级机房池
使用指南
开发者指南
产品介绍
>
短效代理
>
使用指南
>
Python自动化测试Selenium+chrome连接代理ip(账密模式)
Python自动化测试Selenium+chrome连接代理ip(账密模式)
发布时间:2022-09-16 14:16
此示例Python使用Selenium调用Chrome浏览器并通过代理进行自动化测试。 > 请注意:目前最高支持到Chrome 129.0.6614.3,后续版本暂不支持 - 代码示例 ```python import time import string import zipfile from selenium import webdriver from selenium.webdriver.chrome.service import Service targetURL = "http://myip.ipip.net" # 访问的目标站点 proxyHost = "61.171.76.145" # 代理IP地址 proxyPort = "50353" # 代理IP端口号 authKey = "x" # 代理IP的AuthKey password = "x" # 代理IP的AuthPwd def create_proxy_auth_extension(proxy_host, proxy_port, proxy_username, proxy_password, scheme='http', plugin_path=None): if plugin_path is None: plugin_path = r'./{}_{}_qgnet_proxyauth_plugin.zip'.format(proxy_username, proxy_password) manifest_json = """ { "version": "1.0.0", "manifest_version": 2, "name": "Chrome Proxy", "permissions": [ "proxy", "tabs", "unlimitedStorage", "storage", "
", "webRequest", "webRequestBlocking" ], "background": { "scripts": ["background.js"] }, "minimum_chrome_version":"22.0.0" } """ background_js = string.Template( """ var config = { mode: "fixed_servers", rules: { singleProxy: { scheme: "${scheme}", host: "${host}", port: parseInt(${port}) }, bypassList: ["localhost"] } }; chrome.proxy.settings.set({value: config, scope: "regular"}, function() {}); function callbackFn(details) { return { authCredentials: { username: "${username}", password: "${password}" } }; } chrome.webRequest.onAuthRequired.addListener( callbackFn, {urls: ["
"]}, ['blocking'] ); """ ).substitute( host=proxy_host, port=proxy_port, username=proxy_username, password=proxy_password, scheme=scheme, ) with zipfile.ZipFile(plugin_path, 'w') as zp: zp.writestr("manifest.json", manifest_json) zp.writestr("background.js", background_js) return plugin_path if __name__ == '__main__': # 此处指定您的webdriver路径,版本需要跟您所使用的Chrome版本一致, # 下载地址https://registry.npmmirror.com/binary.html?path=chromedriver/ driver_location = "./chromedriver/chromedriver_v106_win.exe" proxy_auth_plugin_path = create_proxy_auth_extension( proxy_host=proxyHost, proxy_port=proxyPort, proxy_username=authKey, proxy_password=password) option = webdriver.ChromeOptions() option.add_argument("--start-maximized") # 窗口最大化运行 option.add_extension(proxy_auth_plugin_path) # 添加proxy插件 # 此处selenium版本为4.8.0 driver = webdriver.Chrome(service=Service(driver_location), options=option) driver.get(targetURL) time.sleep(100) driver.quit() ``` - 运行结果 [](https://cos.qg.net/uploads/image/20220916/d1a8b394a7d64cdd99b120803390ac56.png)
上一篇:没有了
下一篇:没有了
相关文章
隧道代理(全球HTTP)-使用指南-开发版
独享代理-产品介绍
IP如何申请和释放
Firefox浏览器使用Proxy SwitchyOmega插件连接代理IP
长效代理-使用指南-开发版
短效代理(全球HTTP)-按量提取
本文导读