📄️ Пользовательский ввод
В этом примере показано, как получить и обработать пользовательский ввод:
📄️ Добавление данных в набор данных
Этот пример показывает, как сохранить данные в набор данных по умолчанию. Если набор данных не существует, он будет создан автоматически.
📄️ Базовый краулер
Это самый простой пример использования Crawlee, демонстрирующий основные компоненты, такие как BasicCrawler. Однако вам, вероятно, не нужно углубляться в такие детали, и лучше начать с более функциональных краулеров, например, CheerioCrawler или PlaywrightCrawler.
📄️ Парсер Cheerio
В этом примере показано, как использовать CheerioCrawler для обхода списка URL-адресов из внешнего файла. Каждый URL загружается с помощью простого HTTP-запроса, затем HTML парсится с использованием библиотеки Cheerio, из которого извлекаются заголовок страницы и все теги h1.
📄️ Обход всех ссылок на сайте
В этом примере используется метод enqueueLinks() для добавления новых ссылок в RequestQueue
📄️ Сканирование нескольких URL-адресов
В этом примере показано, как сканировать заданный список URL-адресов.
📄️ Обход сайта с относительными ссылками
При обходе веб-сайта вы можете столкнуться с различными типами ссылок, которые нужно обработать.
📄️ Как скрапить отдельный URL
В этом примере мы используем пакет got-scraping
📄️ Обход карты сайта
В этом примере мы рассмотрим, как работать с картой сайта (sitemap) - файлом, который помогает поисковым системам определить важные страницы и файлы на веб-сайте. Мы создадим краулер, который загружает и обрабатывает URL-адреса из карты сайта, используя утилиту Sitemap из модуля @crawlee/utils.
📄️ Как сканировать ссылки на веб-сайте
В этом примере CheerioCrawler используется свойство globs в методе enqueueLinks(), чтобы добавлять в очередь RequestQueue только те ссылки, которые соответствуют заданному шаблону.
📄️ Использование плагина Puppeteer Stealth (puppeteer-extra) и playwright-extra
puppeteer-extra и playwright-extra - это библиотеки, разработанные сообществом, которые добавляют систему плагинов для расширения функциональности puppeteer и playwright соответственно (например, улучшение маскировки бота с помощью плагина Puppeteer Stealth (puppeteer-extra-plugin-stealth)).
📄️ Экспорт всего набора данных в один файл
В этом примере Dataset используется функция exportToValue для экспорта всего набора данных по умолчанию в один CSV-файл в хранилище ключ-значение по умолчанию.
📄️ Скачивание файлов
При веб-скрапинге часто возникает необходимость загружать различные файлы, такие как изображения, PDF-документы или другие бинарные файлы. В этом примере мы рассмотрим, как скачивать файлы с помощью Crawlee и сохранять их в хранилище ключ-значение по умолчанию.
📄️ Загрузка файлов с использованием потоков Node.js
При работе с большими файлами эффективнее использовать потоки Node.js для их загрузки и передачи. В этом примере показано, как загружать файлы с помощью потоков.
📄️ Заполнение и отправка форм с помощью Puppeteer
В этом примере показано, как использовать PuppeteerCrawler для
📄️ HTTP краулер
В этом примере показано, как использовать HttpCrawler для создания HTML-краулера, который обрабатывает список URL-адресов из внешнего файла, загружает каждый URL с помощью обычного HTTP-запроса и сохраняет HTML-контент.
📄️ Веб-краулер на основе JSDOM
В этом примере показано, как использовать JSDOMCrawler для взаимодействия с веб-сайтами с помощью DOM-реализации jsdom.
📄️ Методы map и reduce для Dataset
В этом примере показано простое использование методов Dataset map и reduce. Оба метода можно использовать для упрощения обработки результатов датасета. Их можно вызывать непосредственно на объекте dataset.
📄️ Краулер Playwright
В этом примере показано, как использовать PlaywrightCrawler вместе с RequestQueue для рекурсивного сканирования сайта Hacker News с помощью безголового Chrome и Playwright.
📄️ Использование браузера Firefox с Playwright crawler
В этом примере показано, как использовать PlaywrightCrawler с браузером Firefox в безголовом режиме.
📄️ Создание скриншотов с помощью Puppeteer
Прямое использование Puppeteer
📄️ Краулер Puppeteer
В этом примере показано, как использовать PuppeteerCrawler вместе с
📄️ Рекурсивный обход сайта с Puppeteer
Запустите следующий пример, чтобы выполнить рекурсивный обход веб-сайта с помощью PuppeteerCrawler.
📄️ Пропуск навигации для определенных запросов
При сканировании веб-сайта вы можете столкнуться с определенными ресурсами, которые хотели бы сохранить, но для этого не требуется полная мощность краулера (например, изображения, доставляемые через CDN).