Об этом проекте
Scrapling — это адаптивный фреймворк веб-скрапинга для Python, охватывающий всё: от одиночных запросов к страницам до полноценного параллельного краулинга. Он создан для разработчиков и специалистов по веб-скрапингу, которым нужна устойчивая к изменениям извлечение данных без постоянного переписывания селекторов при изменениях сайтов.
Основные возможности включают:
- Адаптивный парсинг: парсер запоминает расположение элементов и может находить их заново после редизайна сайта с помощью сопоставления на основе сходства, с такими опциями, как adaptive=True или auto_save=True для устойчивого CSS-выбора.
- Гибкие фетчеры: HTTP-фетчеры, способные имитировать TLS-отпечатки и заголовки браузера, фетчеры браузерной автоматизации для динамических страниц и стелс-фетчер, нацеленный на обход распространённых антибот-систем, таких как Cloudflare Turnstile. Все фетчеры предлагают асинхронные варианты и классы постоянных сессий.
- Полноценный фреймворк пауков: API в стиле Scrapy с start_urls, асинхронными колбэками parse, параллельным краулингом, троттлингом по домену, контрольными точками паузы/возобновления, потоковым выводом элементов, обнаружением заблокированных запросов, автоматическим троттлингом, поддержкой robots.txt и режимом разработки, который воспроизводит кэшированные ответы.
- Управление прокси и сессиями: встроенная ротация прокси, переопределение прокси для каждого запроса, предотвращение утечек DNS через DNS-over-HTTPS и опциональное подключение к удалённым браузерам по CDP.
- Интеграции с AI и агентами: сервер MCP позволяет AI-ассистентам выполнять скрапинг через HTTP, динамические или стелс-запросы, при этом промпты удаляются со страниц для снижения риска инъекций; навык агента помогает кодирующим агентам использовать текущий API; а page.markdown() создаёт чистый Markdown, готовый для LLM/RAG, без участия LLM в процессе.
- Опыт разработчика: интерактивная оболочка на базе IPython, скрапинг через CLI без кода, богатая навигация по DOM, автоматическая генерация селекторов, встроенный экспорт в JSON/JSONL/CSV/XML и бесшовная интеграция с колбэками Scrapy.
Проект поддерживает полные аннотации типов, автоматическую проверку типов, Docker-образ со всеми браузерами и тестовое покрытие по всей библиотеке.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.