在 Linux 上通过 cURL 和 Python 使用 ChangeMyIP 住宅代理
一份实用的 Linux 指南,介绍如何通过 cURL 和 Python Requests 使用 ChangeMyIP 住宅代理发送 HTTP 和 SOCKS5 流量。
Linux
SOCKS5
HTTP(S)
网页抓取
概述
本教程介绍如何从 Linux 命令行工具和 Python 脚本使用 ChangeMyIP 住宅代理。ChangeMyIP 提供住宅和数据中心代理、轮换 IP 以及多种协议,包括 HTTP 和 SOCKS5。你需要 ChangeMyIP 代理主机、端口、用户名和密码。示例使用环境变量,因此凭据不会硬编码到脚本中。
步骤
- 登录 ChangeMyIP 并选择一个住宅代理端点。记下主机、端口、用户名和密码。
- 打开终端并导出你的凭据:
export CMY_HOST=your-hostexport CMY_PORT=your-portexport CMY_USER=your-usernameexport CMY_PASS=your-password - 使用 cURL 测试 HTTP 代理:
curl -x http://$CMY_USER:$CMY_PASS@$CMY_HOST:$CMY_PORT https://ifconfig.me - 使用 cURL 测试 SOCKS5 代理:
curl --socks5-hostname $CMY_USER:$CMY_PASS@$CMY_HOST:$CMY_PORT https://ifconfig.me - 对于 Python,安装 Requests 和 SOCKS 依赖:
pip install requests requests[socks] - 创建一个 Python 脚本,读取环境变量并通过 HTTP 代理发送请求:
proxies = {'http': f'http://{user}:{password}@{host}:{port}', 'https': f'http://{user}:{password}@{host}:{port}'}requests.get('https://ifconfig.me', proxies=proxies, timeout=30) - 在 Python 中使用 SOCKS5,请使用相同的凭据,并将代理 URL 设为
socks5h://。 - 如果你的 ChangeMyIP 套餐提供轮换 IP,请使用账户中的轮换端点自动更改出口 IP。否则,在固定端点之间切换。
- 添加重试和超时以处理代理错误,并仅在适合你的用例时轮换 User-Agent。
- 通过检查返回的 IP 和国家/地区来验证每个响应。这可以确认流量正通过 ChangeMyIP 离开。