· 9 мин. чтения

Как собрать поисковую выдачу eBay: цены, продажи и ссылки на товары
От поиска eBay — к таблице товаров
Один товар дешевле, у другого показано 318 продаж, у третьего — зачёркнутая цена. В выдаче eBay есть что сравнить. Соберём эти карточки в таблицу, где каждый товар занимает свою строку, а цены, счётчики продаж и ссылки стоят рядом.
В этом руководстве настроим
Shop::eBay в A-Parser: на вход подадим поисковые фразы вроде portable blender, на выходе получим CSV для Excel или Google Таблиц. В файл попадут названия, цены, ссылки и другие доступные поля карточек. Старая цена, рейтинг и счётчик продаж тоже сохранятся, если eBay показывает их в выдаче.
Дальше можно сортировать товары по цене, сравнивать отображаемые счётчики продаж и выбирать карточки для подробного разбора.
Что задаём и что получаем
| Что задаём | Что обрабатывает A-Parser | Что получаем в CSV |
|---|---|---|
| Поисковая фраза — например, portable blender | Поисковую выдачу eBay по товарам | Строки с названиями, ценами, ссылками и другими атрибутами карточек |
| Рынок eBay — например, США | Локальную версию eBay и её валюту | Цены в валюте выбранного рынка: $, £ или € |
| Настройка выгрузки CSV | Значения с запятыми и кавычками в названиях | Корректный CSV для Excel и Google Таблиц, без сдвига колонок |
Как работает этот сценарий: Укажите ключевую фразу — например,
portable blender— и A-Parser соберёт карточки из поисковой выдачи eBay. Ссылки на отдельные товары и магазины не используйте: они попадут в поиск как текстовый запрос.
1. Какие данные eBay показывает в поисковой карточке?
В карточках выдачи
Shop::eBay собирает 11 полей. Вот что можно сохранить и как использовать в таблице:
В CSV-шаблоне item — это текущая карточка товара. Поэтому её поля записываются как item.title, item.price и item.link.
| Поле в A-Parser | Поле в CSV-шаблоне | Что содержит | Для чего пригодится |
|---|---|---|---|
| Название | item.title | Название товара в карточке | Посмотреть, какие слова продавцы используют в заголовках |
| Ссылка | item.link | URL товара без query-параметров | Сохранить адрес товара без параметров ссылки |
| Изображение | item.image | Ссылка на фото товара | Сопоставить названия товаров с фотографиями |
| Текущая цена | item.price | Цена строкой: число, диапазон или текст | Сравнить цены и разложить найденные товары от дешёвых к дорогим после обработки нечисловых значений |
| Старая цена | item.old_price | Зачёркнутая цена, если она показана в карточке | Посмотреть, насколько отличаются текущая и зачёркнутая цены |
| Валюта | item.currency | Символ валюты ($, £, €) | Проверить валюту перед сравнением цен |
| Рейтинг | item.rating | Оценка, показанная в карточке | Сравнить оценки у карточек, где они показаны |
| Отзывы | item.reviews_count | Число отзывов | Посмотреть, сколько отзывов стоит за показанной оценкой |
| Продажи | item.number_sales | Счётчик продаж, если он показан в карточке | Сравнить счётчики продаж, которые eBay показывает в выдаче |
| Метка статуса | item.light_highlight | Основная пометка карточки, например New Listing | Выделить объявления с пометкой New Listing |
| Дополнительная информация | item.secondary_info | Дополнительная пометка карточки; в тесте — Brand New и Open Box | Разделить карточки по дополнительным пометкам — например, Brand New и Open Box |
Два нюанса: пустые поля и диапазонные цены
- Пустая ячейка — тоже результат: у одной карточки есть зачёркнутая цена и рейтинг, у другой — только название и текущая цена. A-Parser сохраняет доступные поля, а отсутствующие оставляет пустыми. Если счётчик продаж не показан или вместо него стоит
sold out, полеnumber_salesтоже будет пустым. Записывать туда ноль нельзя: пустота не говорит, что продаж не было. - Цена иногда приходит диапазоном: в тестовом CSV диапазоны встретились в 177 из 1 500 строк (11.8%) — примерно в каждой девятой. Например,
16.99 to 17.99сохраняется одной строкой. Ещё одна карточка вернула текстSee priceвместо числа. Перед расчётами такие значения нужно разобрать отдельно: какой край диапазона брать и как обрабатывать текст — зависит от вашей задачи.
2. Настраиваем A-Parser для выгрузки eBay в CSV
Что понадобится
- Установленный A-Parser (редакция Pro или Enterprise).
- Парсер
Shop::eBay в списке активных парсеров. - Резидентские прокси A-Parser для сбора выдачи ebay.com.
Шаг 1. Выберите Shop::eBay
- Откройте веб-интерфейс A-Parser.
- Перейдите в Редактор заданий (Task Editor).
- В выпадающем списке парсеров выберите
Shop::eBay(по умолчанию парсер получит алиасp1или будет доступен напрямую).

Шаг 2. Добавьте поисковые запросы
В поле Запросы (Queries) введите ключевые слова товаров так же, как вы ввели бы их в строку поиска на сайте eBay:
portable blender
dog car seat cover
solar garden lights
thermal label printer
vintage film camera
Масштабирование на тысячи запросов: Для первоначального теста оставьте 1–3 ключевых слова. Когда вы проверите структуру CSV, используйте встроенный макрос перебора:
portable blender {az:a:z}— A-Parser автоматически сгенерирует 26 подзапросов отportable blender aдоportable blender z, собрав максимум листингов из глубины выдачи.
Шаг 3. Настройте домен, страницы, прокси и число попыток
В блоке настроек парсера
Shop::eBay задайте ключевые параметры:
- Ebay domain: выберите целевой рынок, например
United States(ebay.com),United Kingdom(ebay.co.uk) илиGermany(ebay.de). - Pages count: задайте
5страниц на поисковый запрос. - Items Per Page: выберите
60товаров на странице. - Прокси: используйте резидентские прокси США для ebay.com.
- Request retries (Лимит повторов): для этого примера установите значение
150.
⚡ Зачем нужен лимит
Request retries = 150? Это запас попыток на запрос. В тестовой выгрузке все пять запросов дали по пять страниц. В журнале встречались ответы403, но сбор завершился успешно. Даже с лимитом 150 итог всё равно стоит проверять по журналу и файлу результатов.
Шаг 4. Настройте формат вывода через tools.CSVline
Чтобы таблица корректно открывалась в Excel и Google Таблицах, используем встроенный хелпер tools.CSVline. Он автоматически берёт в кавычки поля с запятыми и экранирует спецсимволы.
1. Добавьте заголовки колонок (Initial text)
Разверните блок Больше опций (More options) и в поле Начальный текст (Initial text) укажите строку заголовков. В конце строки обязательно добавьте перевод строки:

Keyword,Product Title,Current Price,Old Price,Currency,Sales Count,Rating,Reviews,Product URL
2. Задайте шаблон результата (Result format)
В поле Формат результата (Result format) вставьте шаблон Template Toolkit:
[% FOREACH item IN products;
tools.CSVline(
query,
item.title,
item.price,
item.old_price,
item.currency,
item.number_sales,
item.rating,
item.reviews_count,
item.link
);
END %]
Если вы используете алиасы парсеров (например, p1), замените products на p1.products, а query на p1.query.
Шаг 5. Сохраните файл и запустите задачу
- В блоке Куда сохранять результат выберите В файл.
- Укажите имя выходного файла с макросом даты:
results/ebay-search-$datefile.format().csv- Нажмите Добавить задание.
- Перейдите в Очередь заданий (Tasks Queue). После завершения задачи нажмите на имя файла, чтобы скачать готовый CSV.

Вот четыре строки из тестовой выгрузки. Девятиколоночный шаблон выше проверен на 1 500 строках: Keyword заполнен во всех строках, а названия с запятыми остаются в своей колонке.
Keyword,Product Title,Current Price,Old Price,Currency,Sales Count,Rating,Reviews,Product URL
"portable blender","TENKER 1000W Smoothie Blender Fruit Juicer Mixer Countertop Blenders Portable",29.99,59.99,$,53,,,https://www.ebay.com/itm/168612307927
"portable blender","Hamilton Beach Personal Blender With Travel Lid #51146V",19.49,,$,,5.0,4,https://www.ebay.com/itm/116077181556
"portable blender","TENKER Personal Blender 900W Shakes Smoothies Vegetable Fruit Countertop Blender",32.99,,$,75,,,https://www.ebay.com/itm/197009518619
"portable blender","Portable Blender Juicer Cup USB Rechargeable Smoothies Mixer Fruit Machine","16.99 to 17.99",,$,131,,,https://www.ebay.com/itm/165878398951
3. Почему для CSV лучше использовать tools.CSVline
Частая ошибка при создании CSV — склеивать значения вручную через запятую:
[% item.title %],[% item.price %],[% item.link %]
На реальной выдаче eBay этот подход гарантированно приведёт к сбою таблицы:
- Запятые в названиях товаров: Листинг
Patriot Portable Mini Blender, USB Rechargeable, Juicer, Shakes & Smoothiesсодержит 3 запятые. При ручной склейке Excel разобьёт одно название на 4 разные колонки, и все последующие данные (цена, ссылка) сдвинутся вправо. - Двойные кавычки и дюймы: Листинг
Portable Blender 18000RPM Dual Mode 20Oz Ice Crushing Cupили товары с пометкой размера экрана (15.6") содержат кавычки, ломающие синтаксис CSV.
tools.CSVline делает таблицу монолитной: он автоматически обрамляет ячейки с разделителями в кавычки и добавляет корректный перенос строки.
Откройте готовый CSV в Excel или Google Таблицах. Проверьте пару строк с запятыми в названиях и пустыми полями: название товара должно целиком остаться в своей ячейке, а цены и ссылки — попасть под свои заголовки.
4. Что показала тестовая выгрузка по пяти запросам
Чтобы показать результат настройки, собрали выдачу по пяти поисковым фразам из примера. Использовали рынок США, резидентские прокси США, 5 страниц на запрос и Request retries = 150. В этом запуске eBay вернул по 60 карточек на страницу, поэтому каждый запрос дал по 300 строк.
В CSV — 1 500 строк, 1 312 уникальных ссылок и 1 191 уникальное название. В 188 строках ссылки встретились повторно: один товар может попасть в разные запросы или на разные страницы.
| Поисковый запрос | Строк в CSV | Собранных страниц | Медиана числовых цен |
|---|---|---|---|
portable blender | 300 | 5 | $24.98 |
dog car seat cover | 300 | 5 | $29.99 |
solar garden lights | 300 | 5 | $18.40 |
thermal label printer | 300 | 5 | $62.96 |
vintage film camera | 300 | 5 | $50.00 |
Все пять запросов собрали по пять страниц. В журнале встречались ответы 403 и повторные попытки, но выгрузка завершилась без таймаутов разбора.
Что видно на конкретных карточках
Две цены — в соседних колонках
В 391 строке была показана зачёркнутая цена. Например, у TENKER 1000W Smoothie Blender текущая цена — $29.99, зачёркнутая — $59.99. В CSV оба значения стоят рядом: можно сравнить их и выбрать карточки для дальнейшего разбора. Историю изменения цены эта выгрузка не показывает.
Счётчик продаж есть не в каждой строке
В 260 из 1 500 строк заполнен счётчик — от 6 до 10 000 продаж, медиана среди заполненных значений — 101.5. Эти строки можно отсортировать по показанному числу и рассмотреть подробнее. Остальные ячейки оставляем пустыми: отсутствие счётчика не означает, что товар не продавался.
5. Частые вопросы о сборе данных с eBay
Можно ли передать URL страницы товара или категории?
Нет.
Shop::eBay работает исключительно с поисковыми фразами. Если передать в поле запросов ссылку на карточку, A-Parser отправит её в поисковую строку eBay (параметр _nkw), и вы получите результаты поиска по тексту этого URL, а не данные конкретного товара.
Почему поля продаж, рейтинга и отзывов иногда пустые?
eBay выводит плашку продаж (например, 154 sold) и рейтинг только тогда, когда у листинга есть достаточная подтверждённая активность. Пустое поле означает отсутствие этого элемента в вёрстке конкретной карточки. Не заменяйте пустые ячейки нулями, чтобы не искажать последующий статистический анализ.
Что делать с ценой-диапазоном?
Такие цены возвращаются для товаров с вариациями. Если вам необходимо проводить строгие математические расчёты, вы можете очистить строку в шаблоне Template Toolkit — например, взять первое число регулярным выражением: item.price.match('^[\d\.]+').0 — либо выгружать сырую строку и обрабатывать её на этапе загрузки в аналитическую базу данных.
Что делать при ошибке 403 Forbidden?
eBay активно фильтрует нецелевой трафик. Убедитесь, что:
- Вы используете резидентские прокси США для ebay.com.
- В переопределениях парсера выбран чекер с этими прокси.
- В журнале видно, были ли повторные попытки и достигнут ли лимит
Request retries. В тестовой выгрузке ответы403встречались, но все страницы были собраны; результат всё равно стоит проверить после завершения задачи.
6. Пресет для быстрого старта
Чтобы не настраивать парсер вручную, вы можете импортировать готовую конфигурацию. Скопируйте код из спойлера ниже и вставьте его через Редактор заданий → Импорт заданий:
Пресет
eJyFVVFv2jAQ/iuW1UqtlLL2oXtgTzQDrVtHGLR7AYRMcgQPx05tB4oQ/31nJ00o
dF0kRO58393583fOjq5BG64kbd8E1DKzMgMNBqyh7fGO5v6dtincse1VOPp91X3J
lbY0oDnTBqEYNqajpcrbbReDCwksWCEwZEftNgcEK6yheQK4yBO0CwO5Vi8ueM1E
gSFWF7D/N8BHh0uIV6AbUF3pf0gNVnMwB8ib2+sPUSyFWBXSNpDbD8K5hczMHKiJ
/3z9AWChdMYscut5qrsan5NeNOx2wm/EpST3fYL9J0VszZeJJPhYpYRp4TkILuGi
9LnnuQC9DRrbwVuWWwHHzlzz+MSpRDJ7dyEutAYZn6SWRTYHPTNMgDle08xymZ54
Yc1hY2ae1uNF3M2qdF3iRrv9r+R8SvfTaUBLjkzPE4YUneU3rUqU9eKIreFROVq5
gMbdQ6vPMkds5fkEc1SxAabj5dVZwiw4RKs8jYvLVmzWCGdJwi1OBBNlVSfxppMn
yZ/9YUmFsY53VFZPqwxdFl5s5dy+djymZ96mmKLw2F8lphR9QA1232PYR3K0gMwg
lUpHuesG3TuqZEeIB1iDQHPBhIGq2l3BRYLT2Fkg6L4Cvh8SneTY15s7LIWS3Wjs
oc7irbvoZ4NK1INK3RzOcdeCZ9yibUI/OO3rgK4A8pqvvuMrUxrqIlXeqjZeOzlI
Nx0/YLtROgkGpfbJo9dx6KVoycDrNBJJ9Ra+SnTkxEh89WBYanBYiq7O9DR8mMiJ
bDTSyaua9IilN2f+1hkrueBpVI30a2QhH/HyjGSoslyAo00WQgTurhs2euyY6pCd
0TBwDA59iYMbDq9mN/nfR2WrOKuo91vXYIYHdVi1ShkzIXC3hysOaKzKI9nV+kgd
XnbU3exsLoDgT+KGJzJRKYmZJjgzlsROExNplEBPynQCkgieLq2ZSLsE1Lsggs1B
4K3FpXWxa/zHa5HgnGWYKENhHkyN58BTiqOYKhwStPbT+ttSf4l2KLY/ZlB6Hcz7
9n8BmqBR4A==