Обход карты сайта
В этом примере мы рассмотрим, как работать с картой сайта (sitemap) - файлом, который помогает поисковым системам определить важные страницы и файлы на веб-сайте. Мы создадим краулер, который загружает и обрабатывает URL-адреса из карты сайта, используя утилиту Sitemap
из модуля @crawlee/utils
.
- Cheerio Crawler
- Puppeteer Crawler
- Playwright Crawler
Run on
import { CheerioCrawler, Sitemap } from 'crawlee';
const crawler = new CheerioCrawler({
// Функция, вызываемая для каждого URL
async requestHandler({ request, log }) {
log.info(request.url);
},
maxRequestsPerCrawl: 10, // Ограничение для только 10 запросов (не используйте, если хотите краулить sitemap)
});
const { urls } = await Sitemap.load('https://crawlee.dev/sitemap.xml');
await crawler.addRequests(urls);
// Запускаем краулер
await crawler.run();
подсказка
Для запуска этого примера на платформе Apify выберите образ apify/actor-node-puppeteer-chrome
в вашем Dockerfile.
Run on
import { PuppeteerCrawler, Sitemap } from 'crawlee';
const crawler = new PuppeteerCrawler({
// Функция, вызываемая для каждого URL
async requestHandler({ request, log }) {
log.info(request.url);
},
maxRequestsPerCrawl: 10, // Ограничение для только 10 запросов (не используйте, если хотите краулить sitemap)
});
const { urls } = await Sitemap.load('https://crawlee.dev/sitemap.xml');
await crawler.addRequests(urls);
// Запускаем краулер
await crawler.run();
подсказка
Для запуска этого примера на платформе Apify выберите образ apify/actor-node-playwright-chrome
в вашем Dockerfile.
Run on
import { PlaywrightCrawler, Sitemap } from 'crawlee';
const crawler = new PlaywrightCrawler({
// Функция, вызываемая для каждого URL
async requestHandler({ request, log }) {
log.info(request.url);
},
maxRequestsPerCrawl: 10, // Ограничение для только 10 запросов (не используйте, если хотите краулить sitemap)
});
const { urls } = await Sitemap.load('https://crawlee.dev/sitemap.xml');
await crawler.addRequests(urls);
// Запускаем краулер
await crawler.run();