EN DE UK RU
Email

Як отримати product data з eBay

KAVUNKA
Приватна пошукова система / Потужні краулери / Швидкий WEB Scraping
Спробувати безкоштовно
eBay - американська інтернет-компанія, що надає послуги онлайн-аукціонів. Фактично це найбільша у світі дошка оголошень із мільйонами товарів від продавців з усього світу. У цьому гайді я покажу, як отримати дані про продані відеокарти. Ми будемо отримувати дані з eBay.com без Selenium, що добре, оскільки швидкість отримання даних буде високою.
  • NAME - назва товару
  • BRAND - бренд товару
  • COND - стан
  • PRICE - ціна
  • LOC - місцезнаходження товару
  • SOLD - кількість проданих одиниць
  • AVAL - кількість доступних
  • IMG - зображення
Ми протестуємо регулярні вирази на цьому прикладі.
Створімо регулярний вираз для назви товару. Це досить просто, оскільки title знаходиться між тегами <h1> та </h1>. Використаємо "Regular expressions designer" і заповнимо відповідні поля.

NAME
Step 1:
(?<=<h1).*?(?=</h1>)
Далі отримаємо значення BRAND. Зазвичай назва бренду знаходиться в "Item specifics".
Тепер потрібно вибрати "Brand: NVIDIA" і переглянути HTML-код виділення. Як видно, eBay використовує itemprop microdata. Це дуже добре, бо ми можемо використати їх для отримання потрібних даних.

BRAND
Step 1:
(?<=<span\ itemprop="brand").*?(?=<\/td>)

Що таке itemprop?

Мікророзмітка - це розмітка даних на сторінці та сайті, яка допомагає пошуковому боту краще розпізнавати контент сайту. Синтаксис такий:
itemprop="<property>"
Ця властивість розміщується в тезі, що містить відповідну інформацію. Властивість визначається словником даних Schema.org, який підтримує Google.
Далі зробимо те саме для решти полів. Також можна прочитати гайд про те, як отримати product data з Amazon. Результатом наших дій будуть регулярні вирази для scraping:

COND
Step 1:
(?<=itemprop="itemCondition").*?(?=</div>)

PRICE
Step 1:
(?<=itemprop="price").*?(?=</)

LOC
Step 1:
(?<=itemprop=['"]availableAtOrFrom['"]>).*?(?=</)

SOLD
Step 1:
(?<=id="why2buy")[\w\W]*?(?=Sold)

AVAL
Step 1:
(?<=<span\ id="qtySubTxt">)[\w\W]*?(?=</span)

IMG
Step 1:
(?<=itemprop="image").*?(?=style\=)
Step 2:
(?<=src=").*?(?=")

Сподіваюся, цей гайд допоможе отримати дані, потрібні для вашого бізнесу!