Crawlee: Создание надежных веб-краулеров и средств автоматизации браузеров с помощью Node.js
Общее введение
Crawlee - это библиотека автоматизации веб-краулеров и браузеров с открытым исходным кодом, разработанная компанией Apify и предназначенная для среды Node.js. Она поддерживает JavaScript и TypeScript и работает с такими инструментами, как Puppeteer, Playwright, Cheerio, JSDOM и другими, предоставляя мощные возможности для сбора данных и автоматизации. Crawlee позволяет пользователям создавать надежные краулеры, которые извлекают данные, необходимые для AI, LLM, RAG или GPT, и загружать HTML, PDF, JPG, PNG и многое другое. Разработанный для того, чтобы сделать краулеры более похожими на человеческие операции, он способен обходить современные механизмы защиты от краулеров, поддерживает ротацию агентов и управление сеансами и подходит для различных сложных задач веб-краулинга.
Crawlee для Python открыт для ранних последователей!

Список функций
- Единый интерфейс для HTTP и безголового браузерного краулинга
- Постоянные очереди для просмотра URL-адресов (в широком и глубоком смысле)
- Подключаемое хранилище данных и файлов
- Автоматическое масштабирование в зависимости от ресурсов системы
- Интегрированная ротация агентов и управление сеансами
- Жизненный цикл может быть настроен с помощью крючков
- CLI-инструмент для загрузки проектов
- Настраиваемые механизмы маршрутизации, обработки ошибок и повторных попыток
- Предоставление Docker-файлов для развертывания
- Написан на TypeScript с поддержкой общих функций
- Поддержка HTTP2 и автоматическая генерация заголовков запросов в стиле браузера
- Встроенный быстрый парсер HTML (Cheerio и JSDOM)
- Поддержка JSON API Crawl
- Рендеринг JavaScript и поддержка скриншотов
- Поддержка режимов Headless и Headed
- Автоматическое создание отпечатков пальцев в человеческом стиле
- Унифицированный интерфейс с использованием Playwright и Puppeteer
- Поддерживает Chrome, Firefox, Webkit и др.
Использование помощи
монтаж
Для работы Crawlee требуется Node.js 16 или выше. Вы можете быстро установить и создать пример краулера с помощью следующей команды:
npx crawlee create my-crawler
cd my-crawler
npm start
Если вы предпочитаете устанавливать вручную, можно воспользоваться следующей командой:
npm install crawlee playwright
Затем импортируйте и используйте его в своем проекте:
import { PlaywrightCrawler, Dataset } from 'crawlee';
const crawler = new PlaywrightCrawler({
async requestHandler({ request, page, enqueueLinks, log }) {
const title = await page.title();
log.info(`Title of ${request.loadedUrl} is '${title}'`);
await Dataset.pushData({ title, url: request.loadedUrl });
await enqueueLinks();
},
// headless: false, // Uncomment to see the browser window
});
await crawler.run(['https://crawlee.dev']);
Функции Поток операций
- Создание проекта Crawler: Быстрое создание нового проекта краулера с помощью Crawlee CLI, который устанавливает все необходимые зависимости и добавляет примеры кода.
- Настройка кроулера: Настройте в проекте логику обработки запросов краулера, место хранения данных, параметры прокси и т. д.
- Запуск краулера: Запустите краулер из командной строки, и Crawlee автоматически обработает запрос, получит данные и сохранит результаты.
- хранение данных: По умолчанию Crawlee хранит данные в текущем рабочем каталоге в
./storage
папку, но эта директория может быть переопределена конфигурационным файлом. - Расширенная функциональность: Добавьте пользовательские крючки, механизмы обработки ошибок и политики повторных попыток, если это необходимо для обеспечения стабильности и надежности краулера.
Управление прокси и сеансами
Crawlee интегрирует ротацию прокси и управление сессиями, чтобы гарантировать, что краулер не будет заблокирован целевым веб-сайтом во время процесса краулинга. Список прокси и параметры сеанса могут быть заданы через конфигурационный файл для автоматической ротации и управления.
развертывания
Crawlee предоставляет Docker-файлы для простого развертывания краулеров в облаке или других средах. Контейнеры Docker могут быть созданы и запущены с помощью следующих команд:
docker build -t my-crawler .
docker run my-crawler
© заявление об авторских правах
Авторское право на статью Круг обмена ИИ Пожалуйста, не воспроизводите без разрешения.
Похожие статьи
Нет комментариев...