Перейти к основному содержанию
В условиях нарастающей борьбы между веб-скрейперами и системами защиты от скрейпинга, контроль и проверка рисков на крупных сайтах и в приложениях становятся все более жесткими, одной из мер является блокировка IP-адресов. Чтобы решить проблему блокировки IP, эффективным способом является настройка прокси. После настройки прокси, веб-скрейпер может использовать IP-адрес прокси для маскировки своего реального IP-адреса, тем самым обходя ограничения систем защиты от скрейпинга. Однако качество прокси может варьироваться. Например, большинство бесплатных прокси на рынке практически неработоспособны или заблокированы, а некоторые платные обычные прокси также постепенно попадают в черные списки систем контроля рисков на крупных сайтах и в приложениях. Поэтому сейчас доступно все меньше высококачественных прокси для сбора данных. На данный момент к высококачественным прокси относятся выделенные прокси, ADSL-прокси и мобильные сотовые прокси. Данная служба прокси основана на ротационных прокси-сервисах мобильной сотовой сети (4G, 5G), в этом документе будет описан процесс подачи заявки и использования этой услуги.

Мобильный сотовый прокси

Мобильный сотовый прокси — это прокси-сервис, основанный на мобильном трафике, все прокси IP являются реальными IP-адресами мобильных телефонов. Этот тип прокси используется в области веб-скрейпинга относительно редко, поэтому вероятность его блокировки также меньше, что делает его эффективным для сбора данных с сайтов и приложений с высокой защитой. Данная служба прокси построена на основе крупномасштабного пула контролируемых мобильных телефонов, весь трафик передается через чистый мобильный трафик, поддерживает запросы данных практически со всех сайтов и приложений на рынке, качество прокси очень высокое, что значительно снижает вероятность блокировки.

Способ подачи заявки

Чтобы использовать службу сотового прокси, сначала перейдите на «страницу заявки» для подачи заявки, при первой подаче заявки предоставляется 1 бесплатный кредит. Если вы еще не вошли в систему, вас автоматически перенаправит на страницу входа, после входа продолжите подачу заявки.

Способ использования

После подачи заявки вы можете проверить результаты своей заявки в «консоли», как показано на изображении: Нажмите «Credentials», чтобы увидеть имя пользователя и пароль для использования службы сотового прокси, разделенные двоеточием, где имя пользователя состоит из 8 символов, а пароль — из 32 символов, как показано на изображении: Данный мобильный сотовый прокси является ротационным прокси, поэтому при использовании достаточно установить фиксированный адрес и порт прокси, адрес и порт прокси — это cellular.proxy.acedata.cloud и 30000, данный прокси поддерживает протоколы HTTP/HTTPS/SOCKS и может использоваться для запросов к сайтам с протоколами HTTP и HTTPS.

Тестирование команд

Получив имя пользователя и пароль прокси, самым удобным способом будет тестирование через командную строку curl. Если он еще не установлен, пожалуйста, обратитесь к https://curl.se/ для установки. Если текущие имя пользователя и пароль прокси — это 1f78266a:eff0896726224fa2a99fe82dd1f07562, мы можем использовать следующую команду curl для тестирования:
curl -x 1f78266a:eff0896726224fa2a99fe82dd1f07562@cellular.proxy.acedata.cloud:30000 https://ipinfo.io
Здесь мы используем параметр -x для указания адреса прокси, протокол прокси по умолчанию — HTTP/HTTPS, URL запроса — https://ipinfo.io, этот сайт может вернуть реальный IP-адрес и регион, откуда был сделан запрос.
Внимание: указанные выше имя пользователя и пароль могут быть недействительными, пожалуйста, замените их на свои имя пользователя и пароль.
Результат выполнения будет следующим:
{
  "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, демонстрирующий способ настройки этого ротационного сотового прокси:
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": "39.144.18.26",
  "city": "Шанхай",
  "region": "Шанхай",
  "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": "Шанхай",
  "region": "Шанхай",
  "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": "Чжаньцзян",
  "region": "Гуандун",
  "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 действительно основано на реальном мобильном трафике. Конечно, вышеуказанный способ настройки прокси на самом деле является относительно простым способом настройки. На самом деле, вышеуказанный код эквивалентен установке дополнительного заголовка - Proxy Authorization во время запроса, поэтому вышеуказанный код также можно переписать следующим образом:
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, также можно использовать аналогичный способ настройки:
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));
}
Результат выполнения будет таким же. Для методов настройки на других языках, пожалуйста, обратитесь к вышеуказанному и перепишите самостоятельно.

Покупка больше

Если ваш пакет уже исчерпан, вам нужно купить больше, чтобы продолжить использовать этот прокси-сервис. Чтобы купить больше, перейдите на «страницу заявки» и просто нажмите кнопку «Купить больше», чтобы выбрать, чем больше вы покупаете за раз, тем дешевле цена за единицу.