Rastrear um Site
Rastreie um site e suas páginas vinculadas para extrair dados abrangentes. Para uso detalhado, confira a Referência da Crawl API
Por padrão, o rastreamento ignora sublinks que não fazem parte da hierarquia de URL que você especificar. Por exemplo, rastrear https://example.com/products/ não capturaria páginas sob https://example.com/promotions/deal-567. Para incluir esses links, ative o parâmetro allowBackwardLinks.
A Scrapeless expõe endpoints para iniciar uma solicitação de rastreamento e obter seu status e resultados. Por padrão, o rastreamento é tratado de forma assíncrona: inicie o job primeiro e, em seguida, verifique seu status até que seja concluído. No entanto, com nossos SDKs, fornecemos uma função simples que gerencia todo o fluxo e retorna os dados assim que o job é finalizado.
Instalação
npm install @scrapeless-ai/sdk
pnpm add @scrapeless-ai/sdk
Uso
import { ScrapingCrawl } from "@scrapeless-ai/sdk";
// Initialize the client
const client = new ScrapingCrawl({
apiKey: "your-api-key", // Get your API key from https://scrapeless.com
});
(async () => {
const result = await client.crawlUrl(
"https://example.com",
{
limit: 2,
scrapeOptions: {
formats: ["markdown", "html", "links"],
onlyMainContent: false,
timeout: 15000,
},
browserOptions: {
proxyCountry: "ANY",
sessionName: "Crawl",
sessionRecording: true,
sessionTTL: 900,
},
}
);
console.log(result);
})();
Resposta
{
"success": true,
"status": "completed",
"completed": 2,
"total": 2,
"data": [
{
"url": "https://example.com",
"metadata": {
"title": "Example Page",
"description": "A sample webpage"
},
"markdown": "# Example Page\nThis is content...",
...
},
...
]
}
Cada página rastreada tem seu próprio status de completed ou failed e pode ter seu próprio campo de erro, então tenha cuidado com isso.
Para ver o schema completo, confira a Referência da API.
Configurações do Browser
Você também pode fornecer configurações para a sessão usada para executar o job de scraping ao criar uma nova sessão; essas configurações podem incluir o uso de um proxy.
Para uma lista completa dos parâmetros disponíveis, consulte a Referência da API ou os Parâmetros do Browser.
import { ScrapingCrawl } from "@scrapeless-ai/sdk";
// Initialize the client
const client = new ScrapingCrawl({
apiKey: "your-api-key", // Get your API key from https://scrapeless.com
});
(async () => {
const result = await client.crawlUrl(
"https://example.com",
{
limit: 2,
browserOptions: {
proxyCountry: "ANY",
sessionName: "Crawl",
sessionRecording: true,
sessionTTL: 900,
},
}
);
console.log(result);
})();
Configurações de Scraping
Você também pode especificar parâmetros opcionais para o job de scraping, como formatos de resposta, ativar a extração apenas do conteúdo principal, definir um tempo limite máximo de navegação de página e muito mais.
import { ScrapingCrawl } from "@scrapeless-ai/sdk";
// Initialize the client
const client = new ScrapingCrawl({
apiKey: "your-api-key", // Get your API key from https://scrapeless.com
});
(async () => {
const result = await client.crawlUrl(
"https://example.com",
{
limit: 2,
scrapeOptions: {
formats: ["markdown", "html", "links"],
onlyMainContent: false,
timeout: 15000,
}
}
);
console.log(result);
})();
Para uma referência completa sobre o endpoint de crawl, confira a Referência da API.