Отримуйте структуровані дані з популярних сайтів
У цій статті я покажу, як збирати дані з популярних вебсайтів, як-от Amazon, Walmart і Zillow, за допомогою API для вебскрапінгу від Bright Data. Давайте розберемося, як це працює.
Важлива примітка: я взагалі не пов’язаний із Bright Data, я просто сам користуюся цією платформою і хотів навчити інших.
Чому вебскрапінг сайтів може бути складним
Вебскрапінг — це техніка, яку використовують для вилучення даних із сайтів. Простіше кажучи, вона дає змогу автоматично збирати структуровану інформацію, як-от дані про товари, ціни, відгуки тощо, із сайтів. Водночас вебскрапінг сайтів має свої виклики. Ось чому:
- Getting Blocked: Багато популярних вебсайтів використовують антиботові заходи, щоб запобігти вебскрапінгу. Якщо вони виявлять, що ви здійснюєте вебскрапінг, то можуть заблокувати вашу IP-адресу.
- Complex Websites: Сайти електронної комерції та нерухомості часто мають складну структуру, через що отримати потрібні дані буває непросто.
- Constant Maintenance: Парсери (скрипти, що вилучають дані) часто ламаються, тому що сайти змінюють свій макет або структуру. Це означає, що ви витрачаєте більше часу на виправлення цих скриптів, ніж на роботу над своїм проєктом.
Як легко отримати структуровані дані з популярних вебсайтів?
Ось як можна почати вебскрапінг структурованих даних із сайтів за допомогою Bright Data:
Зареєструйтеся та налаштуйте свій обліковий запис
Почніть із відвідування сайту Bright Data та створення облікового запису. Після реєстрації ви отримаєте доступ до каталогу їхніх API. У каталозі є різні варіанти API залежно від вебсайту, з якого ви хочете збирати дані. Bright Data спрощує вибір правильного API для вашого сценарію використання.
Оберіть API для сайту
Після реєстрації перегляньте доступні варіанти API в каталозі Bright Data. Наприклад, якщо ви хочете збирати дані про товари з Amazon, можна вибрати Amazon Product Information API.
Bright Data пропонує API для різних сайтів, зокрема:
- Amazon: Деталі продуктів, відгуки, інформація про ціни та багато іншого.
- Walmart: Каталог товарів, наявність і ціни.
- Zillow: Оголошення про нерухомість, деталі об'єктів, ціни та інформацію про місцезнаходження.
- Idealista: Дані про об’єкти нерухомості, оголошення та інформація про оренду.
Вставте URL і отримайте код
Once you’ve chosen the API, you will be prompted to enter the URL or the specific product identifier (e.g., ASIN for Amazon products). After entering the URL, you can click to generate the code in your preferred programming language.
For example, if you want to scrape an Amazon product, you can paste the product URL into the box and then select your programming language (e.g., Python). Bright Data will generate a code snippet for you to copy.
Реалізуйте код
Після того як ви отримаєте згенерований код, його можна інтегрувати у свій проєкт. Нижче наведено приклад коду Python для вебскрапінгу даних про товари з Amazon за допомогою API Bright Data.
# pip3 install requests
import requests
# URL of the product to scrape
url = "https://www.amazon.com/Logitech-920-002478-K120-USB-Keyboard/dp/B003ELVLKU?th=1"
# Your Bright Data API key
apikey = ""
# Parameters to pass to the API
params = {
"apikey": apikey,
"url": url,
}
# Make a request to the Bright Data API
response = requests.get("https://ecommerce.api.brightdata.com/v1/targets/amazon/products/", params=params)
# Print the response text (structured data in JSON format)
print(response.text)
Get Structured Data
Коли ви запускаєте скрипт, API Bright Data поверне дані у структурованому форматі, наприклад JSON. Ось приклад даних, які ви можете отримати з Amazon:
{
"amazon_choice": true,
"availability_status": "In Stock",
"badge": "Amazon's Choice",
"brand": "Logitech",
"buybox_seller": "Amazon.com",
"category_breadcrumb": [
"Electronics",
"Computers & Accessories",
"Computer Accessories & Peripherals",
"Keyboards, Mice & Accessories",
"Keyboards"
],
"is_available": true,
"manufacturer": "Logitech",
"parent_asin": "B0CZXVN37Q",
"price_currency_code": "USD",
"price_currency_symbol": "$",
"product_description": "With comfortable, quiet typing, a sleek yet sturdy design…",
"product_images": [
"https://m.media-amazon.com/images/I/61j3wQheLXL._AC_SL1500_.jpg",
"https://m.media-amazon.com/images/I/61j3wQheLXL.__AC_SX300_SY300_QL70_FMwebp_.jpg"
],
"product_model_number": "920–002478",
"product_name": "Logitech K120 Wired Keyboard",
"product_price": 12.34,
"product_price_before_discount": 12.99,
"product_top_review": "Great keyboard for the price…",
"product_url": "https://www.amazon.com/Logitech-920-002478-K120-USB-Keyboard/dp/B003ELVLKU",
"rating_score": 4.6,
"review_count": 7888,
"sku": "B003ELVLKU"
}
Як бачите, дані чітко структуровані та впорядковані. Ви легко можете отримати доступ до назви продукту, ціни, відгуків, наявності, зображень та іншого в форматі JSON. Це спрощує аналіз і інтеграцію даних у ваші проєкти.
Переваги використання Bright Data для вебскрапінгу
- Bypass Anti-Bot Measures: Bright Data дозволяє збирати дані з вебсайтів шляхом вебскрапінгу без ризику блокування. Сервіс бере на себе роботу з проксі та CAPTCHA.
- No Configuration Needed: Після налаштування ключа API ви можете вебскрапити дані з мінімальними зусиллями.
- Structured Data: Отримуйте дані в добре структурованому форматі (JSON), який легко використовувати та інтегрувати.
- Supports Multiple Websites: Bright Data підтримує вебскрапінг даних із різних вебсайтів, зокрема Amazon, Walmart, Zillow та Idealista.
- Заощаджуйте час і зусилля: Bright Data скорочує час, який ви витрачаєте на підтримку парсерів і роботу зі зламаними скриптами. Ви можете зосередитися на аналізі даних, а не на виправленні проблем.
Сценарії використання структурованих даних
Структуровані дані, які ви витягуєте з вебсайтів, можна використовувати в різних застосунках. Ось кілька прикладів:
- Price Comparison: Порівнюйте ціни на товари на різних сайтах електронної комерції.
- Market Research: Збирайте дані про наявність товарів, цінові тенденції та відгуки для конкурентного аналізу.
- Real Estate Analysis: Збирайте дані про об’єкти нерухомості, такі як ціни, площі та локації, для проєктів у сфері нерухомості.
- Product Review Aggregation: Збирайте відгуки та оцінки про товари з різних джерел, щоб ухвалювати обґрунтовані рішення про купівлю.
Conclusion
Scraping data from popular websites doesn’t have to be hard or take up a lot of time. With the right tools, like an API, you can easily gather structured data from sites like Amazon, Walmart, and Zillow without worrying about getting blocked or fixing broken parsers. The setup is simple; you get clean data in a well-organized JSON format. This makes it easy to use the data in your projects right away. Whether you’re working on e-commerce analysis, market research, or real estate, the right tool helps you gather the data quickly and accurately.

