Вебскрапінг із Claude у 2026 році: автоматизація вилучення даних без зусиль
У цій статті я покажу, як використовувати Claude для вебскрапінгу, і продемонструю, як це може швидко підвищити вашу продуктивність.
Що таке вебскрапінг?
Вебскрапінг — це процес автоматичного витягування інформації з вебсайтів. Це може охоплювати збір тексту, зображень, списків товарів, цін тощо. Вебскрапінг можна виконувати за допомогою традиційних інструментів, як-от BeautifulSoup або Selenium, але ці методи потребують багато ручної роботи для написання парсерів і розв’язання різних проблем, таких як блокування за IP, CAPTCHA та зміни структури сайту.
Claude може спростити цей процес, автоматизувавши вилучення та парсинг даних безпосередньо. Замість того щоб витрачати час на написання складних парсерів, Claude може зрозуміти структуру сайту, інтерпретувати HTML-вміст і повернути дані у структурованому форматі, наприклад JSON.
Навіщо використовувати Claude для вебскрапінгу?
Claude, розроблена Anthropic, є однією з найпередовіших моделей ШІ у світі у 2025 році. Інтегрувавши Claude у свій робочий процес вебскрапінгу, ви можете отримати низку переваг:
- Speed: Claude може обробити сайт і витягти дані за лічені хвилини. Це значно швидше, ніж вручну писати парсери або розбиратися зі змінами на сайті.
- Accuracy: Claude розуміє контекст вебсторінки та може точніше витягувати потрібні дані. Також він легко обробляє складні структури.
- Flexibility: Claude може працювати із сайтами різної складності, зокрема з контентом, що завантажується динамічно, з яким традиційні інструменти вебскрапінгу мають труднощі.
- Cost-Effective: Автоматизація процесу вилучення даних зменшує потребу в ручному втручанні, роблячи це економічно вигіднішим рішенням.
Початок роботи з Claude
Перший крок у використанні Claude для вебскрапінгу — отримати доступ до Anthropic API. Вам потрібно створити обліковий запис в Anthropic і згенерувати API-ключ. Ось як це можна зробити:
- Створіть обліковий запис Anthropic: Перейдіть на сайт Anthropic і зареєструйтеся за допомогою своєї електронної пошти або облікового запису Google.
- Отримайте API-ключ: Після створення облікового запису перейдіть до розділу “API Keys”, згенерувати API-ключ, і зберігайте його в безпеці.
Маючи під рукою API-ключ, ви тепер можете інтегрувати Claude у своє середовище Python.
Налаштування Claude у Python
Почніть із встановлення пакета anthropic у Python. Це можна зробити за допомогою такої команди:
pip install anthropic
Once installed, you can set Налаштувати клієнт Claude with ваш API-ключ.
import anthropic
ANTHROPIC_API_KEY = "YOUR-ANTHROPIC-API-KEY"
# Set up the client
client = anthropic.Anthropic(api_key=ANTHROPIC_API_KEY)
Витягнення даних за допомогою Claude
The core of web scraping with Claude is using the extract_with_claude function. This function sends the HTML content of a webpage to Claude for processing. Let’s see how this works:
- Надішліть HTML до Claude: Ви можете отримати HTML-вміст сторінки за допомогою бібліотеки requests, а потім передати його Claude.
- Parsing HTML: Claude проаналізує HTML і поверне структуровані дані у форматі на кшталт JSON.
Ось приклад того, як використовувати Claude для вебскрапінгу зразкового сайту:
import requests
import anthropic
# URL of the website to scrape
TARGET_URL = "https://quotes.toscrape.com"
# Send request to the website
response = requests.get(TARGET_URL)
# Extract data using Claude
def extract_with_claude(response):
message = client.messages.create(
model="claude-3–5-haiku-20241022",
max_tokens=2048,
messages=[{
"role": "user",
"content": f"Hello, please parse this chunk of the HTML page and convert it to JSON: {response.text}"
}]
)
text = message.to_dict()["content"][0]["text"]
return text
# Print the extracted data
print(extract_with_claude(response))
Ця функція надсилає HTML сторінки до Claude і просить його розібрати вміст у JSON. Модель обробить HTML, витягне дані та поверне їх у структурованому форматі.
Розуміння відповідей Claude
Claude повертає витягнуті дані у форматі, схожому на JSON, що спрощує роботу з ними. Наприклад, під час вебскрапінгу цитат із вебсайту Claude може повернути щось на кшталт цього:
{
"quotes": [
{
"text": «Світ, який ми створили, — це процес нашого мислення.»,
"author": "Albert Einstein",
"tags": ["change", "deep-thoughts", "thinking", "world"]
},
{
"text": "Саме наші вибори, Гаррі, показують, ким ми є насправді, набагато більше, ніж наші здібності.",
"author": "J.K. Rowling",
"tags": ["abilities", "choices"]
}
]
}
Ви можете бачити, як Claude витягнув цитати, авторів і пов’язані теги у чистому JSON-форматі. Це значно полегшує обробку даних у вашому скрипті та їх збереження для подальшого використання.
Вилучення JSON із відповіді Claude
Хоча Claude повертає дані у вигляді текстового рядка, схожого на JSON, нам потрібно витягти справжній JSON із відповіді. Це можна зробити за допомогою регулярних виразів. Ось простий спосіб витягти JSON із виводу Claude:
import re
import json
def pull_json_data(claude_text):
# Use regex to find the JSON block within the response text
json_match = re.search(r"```jsonn(.*?)n```", claude_text, re.DOTALL)
if json_match:
# Extract and return the JSON
return json.loads(json_match.group(1))
else:
print("Не вдалося знайти JSON у відповіді.")
return None
Опрацювання великих вебсторінок
Однією з проблем під час вебскрапінгу великих вебсторінок є те, що вони можуть перевищувати ліміти токенів Claude. Claude має ліміт токенів ліміт у 200 000 токенів, що приблизно дорівнює 400 000 символів. Якщо сторінка більша за це значення, перед надсиланням до Claude потрібно розбити вміст на менші фрагменти.
Ось як можна поділити велику сторінку на менші фрагменти:
def chunk_text(text, max_tokens):
"""Split the text into chunks based on token limit."""
chunks = []
while text:
# Estimate tokens (1 token ≈ 4 characters)
current_chunk = text[:max_tokens * 4]
chunks.append(current_chunk)
text = text[len(current_chunk):]
return chunks
Ця функція розбиває текст на менші фрагменти, які Claude може обробити, не перевищуючи ліміт токенів.
Вебскрапінг із проксі
Деякі сайти, як-от Amazon або Walmart, можуть блокувати запити з небраузерного трафіку. Щоб обійти це, ви можете використати постачальники проксі, наприклад Bright Data, щоб ваші запити виглядали так, ніби вони надходять від реальних користувачів.
Ось приклад того, як використовувати Bright Data разом із Claude для вебскрапінгу:
import requests
# Set up your proxy credentials
PROXY_URL = "http://brd-customer--zone-:@brd.superproxy.io:33335"
# Send request using proxy
response = requests.get(TARGET_URL, proxies={"http": PROXY_URL, "https": PROXY_URL})
# Extract data using Claude
json_data = extract_with_claude(response)
Інтеграція Claude із Selenium для динамічних сторінок
Багато вебсайтів сьогодні динамічно завантажують контент за допомогою JavaScript. Щоб виконувати вебскрапінг таких сайтів, можна використати інструмент автоматизації браузера, наприклад Selenium. Коли у вас є HTML-код сторінки, його можна передати Claude для обробки.
Ось як можна інтегрувати Claude із Selenium:
from selenium import webdriver
# Set up Selenium WebDriver
driver = webdriver.Chrome()
# Navigate to the page
driver.get(TARGET_URL)
# Get the page source
page_source = driver.page_source
# Extract data using Claude
json_data = extract_with_claude(page_source)
Saving Scraped Data
Після того як ви витягнете дані за допомогою Claude, їх можна зберегти у файл, наприклад JSON-файл, для подальшого використання:
import json
# Save the extracted data to a file
with open("output.json", "w") as file:
json.dump(json_data, file, indent=4)
Conclusion
Claude пропонує потужне рішення для автоматизації завдань вебскрапінгу. Воно дає змогу економити час, підвищувати точність і без проблем працювати зі складними вебсайтами. Незалежно від того, чи ви виконуєте вебскрапінг статичних сторінок, динамічно завантажуваного контенту або великих наборів даних, Claude спрощує весь процес. Інтегрувавши Claude з Python, проксі та інструментами на кшталт Selenium, ви можете створювати ефективні та масштабовані вебскрапери, що потребують мінімальних ручних зусиль.
Оскільки вебскрапінг стає дедалі важливішим для багатьох галузей, ШІ-моделі на кшталт Claude й надалі змінюватимуть спосіб, у який ми збираємо й обробляємо дані з вебу. Майбутнє вебскрапінгу вже тут, і його рухає ШІ.

