分享页面
拖动logo到书签栏,立即收藏易兹代理
首页
短效代理
独享代理
隧道代理
静态代理
开发者
开发者中心
API
强大的API支持,让您轻松集成和定制产品,实现更灵活的应用和创新功能
示例代码
获取丰富的示例代码,加速开发过程,更快集成到你的应用
SDK下载
下载最新的软件开发工具包(SDK),简化开发流程,提高开发效率
联系我们
控制台
|
登录/注册
子
用户在实名认证前无法开通业务
充值
未支付订单
未完成工单
未读消息
会员中心
退出登录
产品介绍
开发者指南
API接口
SDK
SDK
代理IP
SDK下载
C语言代码示例
Go语言代码示例
PHP语言代码示例
Python语言代码示例
Java语言代码示例
Shell语言代码示例
C#语言代码示例
Node语言代码示例
隧道代理 Go 语言接入指南
隧道代理 Java 语言代码示例
隧道代理 Python 语言接入指南
Python自动化测试Selenium+chrome连接代理ip(白名单模式)
Python自动化测试Selenium+chrome连接代理ip(账密模式)
SDK
>
代理IP
>
隧道代理 Python 语言接入指南
隧道代理 Python 语言接入指南
发布时间:2023-04-13 14:19
## 概述 本文档将指引你进行隧道代理的接入,在此文档中使用到的术语将会在下方进行列出。 | 术语 | 解释 | | :------- | :----------------------------------------- | | 隧道 | 自动更换代理 IP 的代理服务 | | 固定时长 | 服务器将在固定时长后自动切换IP,例如1分钟 | | 通道 | 使用多个通道同时发起请求,每个通道的IP不同 | 隧道代理有多种使用方式,具体行为取决于套餐及模式。 - 普通模式 每次请求都自动切换IP - 普通模式指定地区 普通模式下,希望可以指定地区(仅适用于全球HTTP隧道代理),具体参考[海外区域编码](/doc/1975.html "海外区域编码")中的易兹编码。 - 普通模式打标记 普通模式下,希望多个HTTP请求保证代理IP相同,可以给多个请求的代理协议打上相同的标记,并标记这个代理IP的存活时间(不主动设置存活时间则默认为10秒) - 固定时长多通道模式 服务器定时切换IP,可同时使用多个通道发起请求,即可以同时使用多个IP ## 前置知识 在 Python 语言中,通常使用 requests 进行 http/s 代理的设定与请求的发送 ### Proxy Url Scheme 由协议、用户名、密码、域名、端口几部分组成 例如 http 协议的代理 url ``` http://[user:password@]hostname:port ``` ### pip Python 的包管理工具,可以简单的进行依赖管理 ## 使用 Python 接入 **以下内容假设读者具备基本的 Python 使用经验和对网络协议具有一定的了解。** ### 安装 requests ```shell pip3 install requests ``` ### 生成 url 普通模式 ```python proxyUrl = "http://%(user)s:%(password)s@%(server)s" % { "user": authKey, "password": password, "server": proxyAddr, } ``` 普通模式指定地区(仅适用于全球HTTP隧道代理) ```python proxyUrl = "http://%(user)s:%(password)s:A%(area)d@%(server)s" % { "user": authKey, "password": password, "server": proxyAddr, "area": area, } ``` 普通模式打标记 ```python proxyUrl = "http://%(user)s:%(password)s:%(channel)s:%(ttl)d@%(server)s" % { "user": authKey, "password": password, "channel": "channel-1", "ttl": 20, "server": proxyAddr, } ``` 固定时长多通道模式(该模式仅适用于2024年5月17日前购买的隧道代理固定时长多通道产品) ```python proxyUrl = "http://%(user)s:%(password)s:%(channel)s@%(server)s" % { "user": authKey, "password": password, "channel": "channel-1", "server": proxyAddr, } ``` ### 设置代理地址 http/s 均适用该地址 ``` proxies = { "http": proxyUrl, "https": proxyUrl, } ``` ### 执行 HTTP/s 请求 以 https://api.ipify.org 为例 ```python resp = requests.get("https://ip.cn/api/index?ip=&type=0", proxies=proxies) ``` ### 读取响应实体 resp.text 是字符串类型,可以直接打印 ```python print(resp.text) ``` ## 示例代码 ```python import requests proxyAddr = "" authKey = "" password = "" proxyUrl = "http://%(user)s:%(password)s@%(server)s" % { "user": authKey, "password": password, "server": proxyAddr, } proxies = { "http": proxyUrl, "https": proxyUrl, } resp = requests.get("https://api.ipify.org", proxies=proxies) print(resp.text) ```
本文导读