AliExpress является одним из крупнейших маркетплейсов в интернете, и данные о товарах, ценах и поисковые данные, которые он предоставляет, по-настоящему полезны для рыночных исследований, отслеживания цен конкурентов или создания инструментов поиска поставщиков. Загвоздка в том, что AliExpress агрессивно защищается от автоматизированного трафика: при реальных объёмах запросов с одного IP дата-центра вместо данных вы получите ограничения скорости, CAPTCHA и IP-баны. Это руководство покажет, как выполнять скрейпинг AliExpress с прокси на Python, направляя запросы через Crawlbase Smart AI Proxy, чтобы сбор данных оставался анонимным и беспрепятственным.
Всё руководство ограничено публичными данными: названиями товаров, ценами, изображениями, сообщениями о доставке и количеством продаж, которые может увидеть любой пользователь на странице результатов поиска без входа в систему. Оно не затрагивает учётные записи, контент за логином, действия оформления заказа или персональные данные. Раздел о законности в конце не является формальностью, поэтому прочитайте его до применения скрейпера в промышленных объёмах.
Зачем нужен прокси для скрейпинга AliExpress
AliExpress, как и большинство крупных платформ e-commerce, воспринимает автоматизированный трафик как угрозу. Три вида защиты мешают наивному скрейперу, и именно ротирующий прокси нейтрализует все три.
IP-блокировки. Слишком много запросов с одного адреса, и AliExpress дросселирует его или блокирует полностью. Один статический IP попросту не способен обеспечить значимый объём скрейпинга.
CAPTCHA. Когда трафик выглядит как скриптовый, AliExpress бросает ему вызов в виде CAPTCHA, призванной отделить людей от ботов. Помеченный IP продолжает получать запросы до тех пор, пока вы не смените его.
Обнаружение ботов. Помимо сырых счётчиков запросов, платформа анализирует паттерны запросов для выявления автоматизации. Предсказуемый высокочастотный трафик с одного источника, наиболее лёгкий паттерн для пометки.
Пул ротирующих жилых прокси отвечает на все три: каждый запрос может исходить с разного реального пользовательского IP, поэтому ни один адрес не достигает лимита скорости, не застревает за CAPTCHA и не выделяется как бот. Можно собрать такой пул самостоятельно, но поиск здоровых жилых IP и поддержание логики ротации в рабочем состоянии составляет большую часть работы. Crawlbase Smart AI Proxy сворачивает всё это в единственный эндпоинт, на который направляется существующий HTTP-клиент.
Место Crawlbase Smart AI Proxy в процессе
Smart AI Proxy является единственным прокси-эндпоинтом, стоящим перед всей инфраструктурой краулинга Crawlbase. Вместо переписывания кода под новый API вы устанавливаете один URL прокси, и ваши обычные вызовы requests проходят через него. За этим эндпоинтом выполняется работа, которую бы делал рукописный прокси-стек:
- Автоматическая ротация IP. IP источника меняется между запросами, опираясь на большой пул жилых и дата-центровых адресов, поэтому вы обходите ограничения скорости и баны без самостоятельного управления ротацией. Механика та же, что у любой настройки ротирующего жилого прокси, только обрабатывается на стороне сервера.
- Маршрутизация трафика и балансировка нагрузки. Запросы распределяются по множеству прокси-серверов, чтобы ни один из них не перегружался, что обеспечивает стабильную пропускную способность во время длительного запуска.
- Перенаправление в Crawling API. Smart AI Proxy передаёт ваши запросы в Crawling API, поэтому вы получаете большинство возможностей этого API, включая серверный рендеринг и управляемые параметры, описанные ниже, без прямого вызова API.
Практическая выгода для AliExpress состоит в том, что вы перестаёте бороться с антибот-слоем. Ваш скрейпер отправляет обычный запрос на один URL прокси; прокси обрабатывает IP, ротацию и маршрутизацию, чтобы страница возвращалась вместо блокировки.
Оба достигают одного и того же бэкенда краулинга. Разница в форме интеграции. Smart AI Proxy является прокси-эндпоинтом, который вставляется в любой инструмент, поддерживающий HTTP-прокси, поэтому существующий код работает без изменений. Crawling API является HTTP-интерфейсом, вызываемым напрямую при написании нового кода. Это руководство использует Smart AI Proxy, поскольку скрейпер AliExpress представляет собой стандартный скрипт на requests.
Проверка прокси одной командой curl
Прежде чем писать Python, убедитесь, что прокси работает одной командой. Сначала создайте аккаунт Crawlbase и откройте панель управления Smart AI Proxy, чтобы скопировать токен аутентификации. Затем выполните следующую команду, заменив USER_TOKEN на ваш токен.
curl -x "http://[email protected]:8012" -k "https://www.aliexpress.com/w/wholesale-macbook-pro.html"
Здесь происходит следующее. Флаг -x направляет запрос через Smart AI Proxy, который прослушивает порт 8012 на smartproxy.crawlbase.com. Ваш токен является именем пользователя в URL прокси, а пароль остаётся пустым. Флаг -k указывает curl пропустить проверку SSL-сертификата, что необходимо при туннелировании HTTPS через прокси; без него рукопожатие между curl и прокси может не состояться. При успехе вы получите сырой HTML страницы поиска AliExpress.
Добавление параметров для тонкой настройки запроса
Поскольку Smart AI Proxy перенаправляет в Crawling API, вы можете передавать параметры Crawling API через специальный заголовок с именем CrawlbaseAPI-Parameters. Именно так вы указываете прокси, как именно обрабатывать запрос, вместо принятия настроек по умолчанию.
Наиболее полезный параметр для данной задачи, scraper=aliexpress-serp. Вместо возврата сырого HTML он запускает встроенный парсер результатов поиска AliExpress Crawlbase и возвращает чистый структурированный JSON, полностью избавляя от написания и поддержки селекторов.
curl -H "CrawlbaseAPI-Parameters: scraper=aliexpress-serp" \ -x "http://[email protected]:8012" -k \ "https://www.aliexpress.com/w/wholesale-macbook-pro.html"
Один этот заголовок превращает беспорядочный HTML-дамп в организованные данные о товарах. Тот же параметр мы используем из Python чуть ниже.
Настройка Python-проекта
Вам нужен Python 3. Если вы впервые, установите его с python.org и проверьте версию. Затем создайте папку проекта и добавьте файл скрипта.
python --version mkdir aliexpress-scraper && cd aliexpress-scraper touch aliexpress.py
Вам понадобится только один сторонний пакет. Библиотека requests обрабатывает HTTP и нативно поддерживает прокси, а json входит в стандартную библиотеку Python, так что устанавливать его не нужно.
pip install requests
Загрузка страницы через Smart AI Proxy
Начните с подтверждения работы прокси из Python до парсинга чего-либо. Откройте aliexpress.py и добавьте приведённый ниже код, подставив свой токен. Паттерн соответствует команде curl: ваш токен и пустой пароль становятся учётными данными прокси, а оба протокола, http и https, маршрутизируются через один URL Smart AI Proxy.
import requests username = "USER_TOKEN" password = "" proxy_auth = f"{username}:{password}" url = "https://www.aliexpress.com/w/wholesale-macbook-pro.html" proxy_url = f"http://{proxy_auth}@smartproxy.crawlbase.com:8012" proxies = {"http": proxy_url, "https": proxy_url} response = requests.get(url=url, proxies=proxies, verify=False) print("Status:", response.status_code) print(response.text[:500])
Три детали имеют значение. Словарь proxies указывает requests направлять все запросы через Smart AI Proxy. Аргумент verify=False отключает SSL-верификацию по той же причине, что и -k в curl; для долгоживущего продакшн-сервиса следует правильно настроить обработку сертификатов вместо отключения проверки. Запустите командой python aliexpress.py, и вы должны увидеть статус 200 и первый фрагмент HTML AliExpress, что подтверждает правильность маршрутизации прокси.
AliExpress быстро блокирует трафик, похожий на скрейперный. Smart AI Proxy является единственным эндпоинтом, на который направляются вызовы requests: он ротирует жилые и дата-центровые IP на стороне сервера, обрабатывает маршрутизацию и перенаправляет в Crawling API, поэтому CAPTCHA и IP-баны перестают быть вашей проблемой. Добавьте его в уже имеющийся код и направьте на публичную страницу на бесплатном тарифе.
Парсинг результатов в структурированный JSON
Работать с сырым HTML неудобно. Вместо написания CSS-селекторов для разметки AliExpress, меняющейся без предупреждения, воспользуйтесь встроенным парсером, передав параметр scraper=aliexpress-serp в заголовке. Прокси вернёт чистый JSON вместо HTML, а json.loads превратит его в словарь Python, по которому можно перемещаться.
import requests import json username = "USER_TOKEN" password = "" proxy_auth = f"{username}:{password}" url = "https://www.aliexpress.com/w/wholesale-macbook-pro.html" proxy_url = f"http://{proxy_auth}@smartproxy.crawlbase.com:8012" proxies = {"http": proxy_url, "https": proxy_url} headers = {"CrawlbaseAPI-Parameters": "scraper=aliexpress-serp"} response = requests.get(url=url, proxies=proxies, headers=headers, verify=False) data = json.loads(response.text) print(json.dumps(data, indent=4))
Ответ представляет собой JSON-объект, массив body.products которого содержит по одной записи на листинг. Усечённый пример выглядит так:
{ "original_status": 200, "cb_status": 200, "body": { "products": [ { "title": "5 In 1 USB C Hub Type C to 4K HD Adapter for Macbook Pro", "price": { "current": "$1.27" }, "url": "https://www.aliexpress.com/item/1005005653517644.html", "image": "https://ae04.alicdn.com/kf/Sbffa8b7a90564cff8.jpg", "shippingMessage": "Free shipping", "soldCount": 207 } ], "relatedSearches": [] } }
Каждый товар содержит поля, действительно нужные для исследования: название, текущую цену, URL товара, изображение, сообщение о доставке и количество продаж. Парсер также возвращает список relatedSearches, который можно использовать для обнаружения смежных запросов.
Результаты поиска AliExpress находятся по адресу /w/wholesale-<keyword>.html. Замените ключевое слово в этом пути для скрейпинга другого запроса и используйте региональный поддомен (например, специфичный для страны), если вам нужны цены и доставка для конкретной локали. Убедитесь, что в слаге URL многословные ключевые слова объединены дефисами.
Сохранение данных в JSON-файл
Вывод в консоль удобен при итерациях, но результаты нужно хранить на диске. Добавьте несколько строк для записи разобранного словаря в файл, чтобы затем анализировать его или загружать в пайплайн.
import requests import json username = "USER_TOKEN" password = "" proxy_auth = f"{username}:{password}" url = "https://www.aliexpress.com/w/wholesale-macbook-pro.html" proxy_url = f"http://{proxy_auth}@smartproxy.crawlbase.com:8012" proxies = {"http": proxy_url, "https": proxy_url} headers = {"CrawlbaseAPI-Parameters": "scraper=aliexpress-serp"} response = requests.get(url=url, proxies=proxies, headers=headers, verify=False) data = json.loads(response.text) with open("scraped_data.json", "w") as json_file: json.dump(data, json_file, indent=4) print("Saved scraped_data.json")
Две новые строки выполняют всю работу: open(...) создаёт scraped_data.json в режиме записи, а json.dump сериализует разобранный словарь в него. Это полный, готовый к запуску скрейпер AliExpress: он загружает страницу поиска через ротирующий прокси, разбирает её в структурированные данные и сохраняет результат.
Масштабирование скрейпера
Одна страница поиска, демонстрация. Реальная задача охватывает множество ключевых слов или страниц и должна оставаться надёжной в рамках допустимой нагрузки на сайт. Несколько практик переводят скрипт с разового запуска на продакшн-задачу.
-
Цикл по множеству запросов. Оберните загрузку в функцию, принимающую ключевое слово, формируйте из него URL
/w/wholesale-<keyword>.htmlи перебирайте список поисковых запросов, накапливая строки по ходу. -
Параллельность. Последовательная загрузка одного URL медленна. Отправляйте запросы параллельно с
concurrent.futuresили переходите наasyncioиaiohttpдля более высокой пропускной способности. Smart AI Proxy ротирует IP на запрос, поэтому параллельность не концентрирует нагрузку на одном адресе. -
Корректная обработка ошибок. Оберните каждый запрос в try/except, проверяйте
response.status_codeперед парсингом и добавляйте повтор с экспоненциальной задержкой для транзиентных сбоев, чтобы один плохой ответ не обрушил весь запуск. - Используйте настоящее хранилище при больших объёмах. Плоские JSON-файлы хороши для старта, но для больших датасетов записывайте строки в базу данных, такую как PostgreSQL или MySQL, с правильной индексацией.
Ротация, единственный компонент, который не нужно строить самостоятельно, поскольку Smart AI Proxy предоставляет каждому запросу свежий IP из своего пула. Общая методология сохранения незаблокированности в масштабе изложена в статье как скрейпить сайты без блокировок.
Законно ли скрейпить AliExpress?
Допустимость скрейпинга AliExpress зависит от условий использования платформы, вашей юрисдикции и того, как вы используете данные. Условия AliExpress ограничивают автоматизированный доступ, поэтому скрейпинг может противоречить этим условиям независимо от аккуратности вашего инструментария. Ни один из приведённых здесь фрагментов кода не изменяет этого; он лишь обеспечивает техническую работоспособность.
Несколько принципов, которых стоит придерживаться. Собирайте только публичные данные: названия товаров, цены, изображения, сообщения о доставке и рейтинги, видимые на странице поиска без аккаунта. Соблюдайте robots.txt сайта и заявленные ограничения скорости, держите объём запросов достаточно низким, чтобы не перегружать серверы. Если планируете коммерческое повторное использование данных, получите разрешение или официальное соглашение, а не считайте молчание согласием. И никогда не собирайте персональные данные, включая всё, связанное с учётными записями отдельных покупателей или продавцов.
Это руководство намеренно ограничено публичными данными листингов, поскольку именно это удерживает работу в защищаемых рамках. Оно не охватывает ничего за логином, данных аккаунтов или профилей, сообщений, истории заказов и любых действий, обходящих аутентификацию. Если ваш проект требует большего, чем публичные листинги, правильный путь, официальный API или соглашение о данных с платформой, а не более умный скрейпер.
Ключевые выводы
- AliExpress быстро блокирует скрейперы. IP-баны, CAPTCHA и обнаружение ботов делают один статический IP неработоспособным, поэтому запросы направляются через ротирующий прокси.
-
Smart AI Proxy является подключаемым эндпоинтом. Направьте свои вызовы
requestsна один URL прокси, и он ротирует IP и перенаправляет в Crawling API на стороне сервера без переписывания кода. -
Пропустите селекторы, используя встроенный парсер. Передайте
scraper=aliexpress-serpв заголовкеCrawlbaseAPI-Parameters, и прокси вернёт чистый структурированный JSON вместо сырого HTML. - Сохраняйте и масштабируйте. Сохраняйте результаты в JSON или базу данных, затем добавляйте цикл по ключевым словам, параллельность и обработку ошибок для перехода от демонстрации к продакшн-задаче.
- Работайте только с публичными данными. Соблюдайте Условия использования и robots.txt AliExpress; никаких аккаунтов, персональных данных и действий, обходящих аутентификацию.
Часто задаваемые вопросы
Зачем нужен прокси для скрейпинга AliExpress?
AliExpress блокирует автоматизированный трафик с помощью IP-банов, CAPTCHA и обнаружения ботов, поэтому один статический IP практически сразу дросселируется или блокируется при реальных объёмах. Ротирующий прокси даёт каждому запросу другой реальный пользовательский IP, поэтому ни один адрес не достигает лимита скорости и не застревает за проверкой. Crawlbase Smart AI Proxy обрабатывает эту ротацию за вами за единственным эндпоинтом.
В чём разница между Smart AI Proxy и Crawling API?
Оба достигают одного и того же бэкенда краулинга Crawlbase; они различаются способом интеграции. Smart AI Proxy является прокси-эндпоинтом, встраиваемым в любой инструмент с поддержкой HTTP-прокси, поэтому существующий код работает без изменений. Crawling API является HTTP-интерфейсом, вызываемым напрямую при написании нового кода. Это руководство использует Smart AI Proxy, поскольку скрейпер является стандартным скриптом Python на requests.
Как получить структурированные данные вместо сырого HTML?
Передайте параметр scraper=aliexpress-serp в заголовке запроса CrawlbaseAPI-Parameters. Поскольку Smart AI Proxy перенаправляет в Crawling API, это запускает встроенный парсер поиска AliExpress Crawlbase и возвращает чистый JSON с названием, ценой, URL, изображением, сообщением о доставке и количеством продаж каждого товара, избавляя от написания и поддержки CSS-селекторов.
Почему нужно отключать SSL-верификацию при использовании прокси?
Туннелирование HTTPS-трафика через Smart AI Proxy требует пропуска локальной проверки сертификата, что задаётся флагом -k в curl и аргументом verify=False в Python requests. Без этого рукопожатие между вашим клиентом и прокси может не состояться. Для долгоживущего продакшн-сервиса следует настроить обработку сертификатов должным образом, а не отключать проверку полностью.
Можно ли использовать Smart AI Proxy для сайтов помимо AliExpress?
Да. Smart AI Proxy является универсальным ротирующим прокси-эндпоинтом, поэтому он работает с большинством публичных сайтов, а не только с AliExpress. Парсер scraper=aliexpress-serp специфичен для AliExpress, но сам прокси маршрутизирует запросы на любую цель. Для других сайтов есть собственные парсеры, или можно загружать сырой HTML и разбирать его самостоятельно.
Законно ли скрейпить AliExpress?
Это зависит от условий использования AliExpress, вашей юрисдикции и вашей цели, а их условия ограничивают автоматизированный доступ. Строго придерживайтесь публичных данных листингов, соблюдайте robots.txt и ограничения скорости и никогда не трогайте аккаунты, персональные данные или действия, обходящие аутентификацию. Для коммерческого повторного использования получите разрешение или официальное соглашение о данных, а не полагайтесь на скрейпер.
Обходите любой сайт в масштабе, без борьбы с инфраструктурой.
Crawlbase берёт на себя прокси, отпечатки и CAPTCHA, чтобы ваша команда выпускала конвейеры данных вместо поддержки обвязки краулинга. 1 000 запросов бесплатно, без карты.

