Как автоматизировать сбор данных на сайте с капчей
Python
Middle
Без компании
Как автоматизировать сбор данных на сайте с капчей
Ответы
Для автоматизации сбора данных с сайтов, защищённых капчей, можно использовать следующие подходы:
- **Обход капчи вручную** – сохранять куки после ручного ввода капчи, чтобы повторно использовать сессию.
Пример с `requests` и `selenium`:
```
from selenium import webdriver
import time
driver = webdriver.Chrome()
driver.get("https://example.com")
time.sleep(30) # Время для ручного ввода капчи
cookies = driver.get_cookies()
driver.quit()
session = requests.Session()
for cookie in cookies:
session.cookies.set(cookie['name'], cookie['value'])
```
- **Использование API сервисов распознавания** (Anti-Captcha, 2Captcha).
Пример с `2captcha`:
```
from python3_anticaptcha import ImageToTextTask
solver = ImageToTextTask(api_key="YOUR_KEY")
result = solver.captcha_handler(captcha_file="captcha.png")
captcha_text = result["solution"]["text"]
```
- **Избегание триггеров капчи** – замедление запросов, использование прокси, эмуляция поведения пользователя.
- **Headless-браузеры** (Playwright, Puppeteer) с эмуляцией действий мыши и клавиатуры.
**Важно:** Убедитесь, что автоматизация не нарушает правила сайта (robots.txt, ToS).