便宜又好用的移动 4G 蜂窝代理快来看看!

在爬虫与反爬虫斗争愈演愈烈的情况下,各大网站和 App 的风控检测越来越强,其中一项就是 IP 封禁。

为了解决 IP 封禁的困扰,一个有效的方式就是设置代理,设置代理之后,爬虫可以借助代理的 IP 来伪装自己的真实 IP 地址,从而突破反爬虫的限制。

但代理的质量有高有低,比如市面上的免费代理,几乎绝大多数都是不可用或者被封禁的状态,而有些付费普通代理也陆续被加入了各大网站和 App 的风控黑名单。因此,现在可以用作高质量数据爬爬取的代理越来越少了,目前市面上质量较高的代理主要有独享代理、ADSL 代理、移动蜂窝代理这几种类型。

本代理服务就是基于移动蜂窝网络(4G、5G)的轮换代理服务,本文档会介绍此服务的申请和使用方法。

移动蜂窝代理

移动蜂窝代理,其实就是基于手机流量搭建的代理服务,所有的代理 IP 都是手机真实的 IP。此种代理在爬虫领域使用相对较少,因此被封禁的概率也更小,所以此种代理对于爬取一些风控极强的网站和 App 的爬取有很好的效果。

本代理服务背后是基于一个大规模的群控手机池搭建的代理服务,所有流量都经由纯正的手机流量转发,支持市面上几乎所有网站和 App 的数据请求,代理质量极高,能够极大减小风控概率。

申请方法

要使用蜂窝代理服务,可以首先到「申请页面」进行申请,首次申请有 1 积分免费额度。

如果您尚未登录,则会自动跳转到登录页面,登录之后继续申请即可。

使用方法

申请完毕之后,可以到「控制台」中查看本人的申请结果,如图所示:

点击 「Credentials」,即可查看使用蜂窝代理服务的用户名及密码,以冒号分隔,其中用户名是 8 位,密码是 32 位,如图所示:

本移动蜂窝代理是一种轮换代理,因此使用的时候只需要设置一个固定的代理地址和端口即可,代理的地址和端口分别是 cellular.proxy.acedata.cloud 和 30000,本代理是 HTTP/HTTPS/SOCKS 协议的代理,可以用于请求 HTTP 和 HTTPS 协议的网站。

命令测试

有了代理的用户名密码之后,最方便的方法便是通过 curl 命令行进行测试,如尚未安装,请参考 https://curl.se/ 安装即可。

假如当前代理的用户名密码是 1f78266a:eff0896726224fa2a99fe82dd1f07562,我们可以用如下 curl 命令进行测试:

shell curl -x 1f78266a:eff0896726224fa2a99fe82dd1f07562@cellular.proxy.acedata.cloud:30000 https://ipinfo.io

这里我们使用 curl 的 -x 参数指定了代理地址,代理协议默认是 HTTP/HTTPS,这里请求的 URL 是 https://ipinfo.io,这个站点可以返回请求该站点的真实 IP 地址和 IP 所在地域。

注意:上述用户名密码可能无效,请自行替换成你的用户名密码。

运行结果如下:

json { "ip": "39.144.10.182", "city": "Shanghai", "region": "Shanghai", "country": "CN", "loc": "31.2222,121.4581", "org": "AS9808 China Mobile Communications Group Co., Ltd.", "postal": "200000", "timezone": "Asia/Shanghai", "readme": "https://ipinfo.io/missingauth" }

可以看到,返回结果的 country 是 CN,代表中国,org 是 China Mobile,代表中国移动网络,确实是蜂窝代理出口。

如果再次运行,可以得到不一样的结果,每次请求都是随机的 IP 出口。

代码对接

下面以 Python 为例演示该蜂窝轮换代理的设置方法:

```python import requests

proxy = 'http://{proxy_username}:{proxy_password}@cellular.proxy.acedata.cloud:30000'

proxies = { 'http': proxy, 'https': proxy }

for _ in range(3): resp = requests.get('https://ipinfo.io', proxies=proxies) print(resp.text)

```

这里我们首先声明了代理的 URL 并定义为 proxy 变量,协议是 http 协议,后面跟随轮换代理的用户名和密码(即控制台展示的用户名和密码,二者以冒号分隔),后面再跟一个 @ 符号,再跟代理的地址和端口即可。

接着声明了一个 proxies 变量,配置了两个键值对,键名分别为 http 和 https,其键值都是 proxy,代表对于 HTTP 和 HTTPS 协议的网站,都是用 proxy 变量定义的代理来进行请求。

接下来定义了三次循环进行代理的测试,这里请求的 URL 是 https://ipinfo.io,这个站点可以返回请求该站点的真实 IP 地址和 IP 所在地域。

运行结果如下:

json { "ip": "39.144.18.26", "city": "Shanghai", "region": "Shanghai", "country": "CN", "loc": "31.2222,121.4581", "org": "AS9808 China Mobile Communications Group Co., Ltd.", "postal": "200000", "timezone": "Asia/Shanghai", "readme": "https://ipinfo.io/missingauth" } { "ip": "39.144.18.26", "city": "Shanghai", "region": "Shanghai", "country": "CN", "loc": "31.2222,121.4581", "org": "AS9808 China Mobile Communications Group Co., Ltd.", "postal": "200000", "timezone": "Asia/Shanghai", "readme": "https://ipinfo.io/missingauth" } { "ip": "39.144.182.55", "city": "Zhanjiang", "region": "Guangdong", "country": "CN", "loc": "21.2339,110.3875", "org": "AS24445 Henan Mobile Communications Co.,Ltd", "postal": "524000", "timezone": "Asia/Shanghai", "readme": "https://ipinfo.io/missingauth" }

可以看到,每次运行的结果得到的代理 IP 都是随机的,而且 IP 所在地域确实是来源于真实手机流量。

当然,上述的代理设置方式实际上是一个相对简洁的设置方式。

实际上上述代码等价于在请求的时候设置了一个额外的 Headers - Proxy Authorization,所以上述代码还可以改写如下:

```python import requests import base64

proxy_host = 'cellular.proxy.acedata.cloud' proxy_port = '30000' proxy_username = '{proxy_username}' # 8位用户名 proxy_password = '{proxy_password}' # 32位密码

credentials = base64.b64encode( f'{proxy_username}:{proxy_password}'.encode()).decode()

proxies = { 'http': f'http://{proxy_host}:{proxy_port}', 'https': f'http://{proxy_host}:{proxy_port}' }

headers = { 'Proxy-Authorization': f'Basic {credentials}' }

for _ in range(3): resp = requests.get('https://ipinfo.io', proxies=proxies, headers=headers) print(resp.text)

```

可以看到,这里我们通过 Proxy-Authorization 这个请求头额外设置了代理的用户名和密码(需要进行 Base64 编码),这样的代码运行效果也是一样的。

对于其他语言,比如 JavaScript 的 axios,也可以使用类似的设置方式:

```javascript const axios = require("axios"); const base64 = require("base64");

const proxy_host = "cellular.proxy.acedata.cloud"; const proxy_port = "30000"; const proxy_username = "{proxy_username}"; // 8位用户名 const proxy_password = "{proxy_password}"; // 32位密码

const credentials = base64.encode(${proxy_username}:${proxy_password});

const proxies = { http: http://${proxy_host}:${proxy_port}, https: http://${proxy_host}:${proxy_port}, };

const headers = { "Proxy-Authorization": Basic ${credentials}, };

for (let i = 0; i < 3; i++) { axios .get("https://ipinfo.io", { proxies, headers }) .then((resp) => console.log(resp.data)) .catch((err) => console.error(err)); } ```

运行效果都是一样的。

对于其他语言的设置方法,请参考上文自行改写。

购买更多

如您的套餐已经耗尽,您需要购买更多才能继续使用该代理服务。

要购买更多,请到「申请页面」直接点击「购买更多」按钮即可选购,单次购买更多,单价越便宜。

相关推荐
微帧Visionular1 小时前
AI视频单帧清晰,播放时却闪烁,原因是什么?
人工智能·深度学习·音视频
辰辰观影2 小时前
Windows网盘视频播放器推荐:无广告4K HDR怎么选
音视频
2601_966827454 小时前
电视端云盘在线播放怎么选?支持4K HDR的应用推荐
音视频
开开心心就好5 小时前
音频降噪剪辑工具,音量裁剪一键处理
运维·服务器·前端·spring·ocr·音视频·1024程序员节
AI视频工具指南9 小时前
AI视频的声音和画面怎么配合?先分清谁在传递信息
人工智能·aigc·音视频
辰辰观影11 小时前
无广告播放器推荐来啦
音视频
TrueDei11 小时前
GStreamer 使用 valve 分别控制音视频流的暂停与恢复
音视频
一条破秋裤12 小时前
基于 Hi3516CV610 的立定跳远视频测量系统调研与实施方案
arm开发·音视频
2601_9668274512 小时前
视频里的特效字幕怎么翻译?外挂字幕与AI字幕一键处理教程
音视频
八月的雨季 最後的冰吻14 小时前
音视频面试--延迟优化
面试·职场和发展·音视频