Começando
Crawleando uma Única Página
A API Crawl permite que você obtenha os dados que deseja de páginas da web com uma única chamada. Você pode raspar o conteúdo da página e capturar seus dados em vários formatos.
O Scrapeless expõe endpoints para iniciar uma solicitação de raspagem e para obter seu status e resultados. Por padrão, a raspagem é gerenciada de forma assíncrona, primeiro iniciando o trabalho e depois verificando seu status até que ele seja concluído. No entanto, com nossos SDKs, fornecemos uma função simples que lida com todo o fluxo e retorna os dados assim que o trabalho estiver concluído.
Instalação
npm install @scrapeless-ai/sdk
pnpm add @scrapeless-ai/sdk
Uso
import { ScrapingCrawl } from "@scrapeless-ai/sdk";
// Inicializa o cliente
const client = new ScrapingCrawl({
apiKey: "your-api-key", // Obtenha sua chave de API em https://scrapeless.com
});
(async () => {
const result = await client.scrapeUrl(
"https://example.com"
);
console.log(result);
})();
Configurações do Navegador
Você também pode fornecer configurações para a sessão usada para executar o trabalho de raspagem ao criar uma nova sessão; isso pode incluir o uso de um proxy.
O Scrapeless lida automaticamente com tipos comuns de CAPTCHA, incluindo reCAPTCHA v2, Cloudflare Turnstile/Challenge.
Nenhuma configuração adicional é necessária—o Scrapeless cuida disso durante a raspagem. 👉 Para mais detalhes, confira Solução de CAPTCHA.
Para ver todos os diferentes parâmetros de navegador disponíveis, confira a Referência da API ou Parâmetros do Navegador.
import { ScrapingCrawl } from "@scrapeless-ai/sdk";
// Inicializa o cliente
const client = new ScrapingCrawl({
apiKey: "your-api-key", // Obtenha sua chave de API em https://scrapeless.com
});
(async () => {
const result = await client.scrapeUrl(
"https://example.com",
{
browserOptions: {
proxy_country: "ANY",
session_name: "Crawl",
session_recording: true,
session_ttl: 900,
},
}
);
console.log(result);
})();
Configurações de Raspagem
Você também pode especificar parâmetros opcionais para o trabalho de raspagem, como formatos de resposta, habilitando a extração apenas do conteúdo principal, definindo um tempo limite máximo de navegação na página e muito mais.
import { ScrapingCrawl } from "@scrapeless-ai/sdk";
// Inicializa o cliente
const client = new ScrapingCrawl({
apiKey: "your-api-key", // Obtenha sua chave de API em https://scrapeless.com
});
(async () => {
const result = await client.scrapeUrl(
"https://example.com",
{
formats: ["markdown", "html", "links"],
onlyMainContent: false,
timeout: 15000,
}
);
console.log(result);
})();
Para uma referência completa sobre o endpoint de raspagem, confira a Referência da API.
Raspagem em Lote
A raspagem em lote funciona da mesma forma que a raspagem regular, exceto que, em vez de uma única URL, você pode fornecer uma lista de URLs para raspar de uma vez.
import { ScrapingCrawl } from "@scrapeless-ai/sdk";
// Inicializa o cliente
const client = new ScrapingCrawl({
apiKey: "your-api-key", // Obtenha sua chave de API em https://scrapeless.com
});
(async () => {
const result = await client.batchScrapeUrls(
["https://example.com", "https://scrapeless.com"],
{
formats: ["markdown", "html", "links"],
onlyMainContent: false,
timeout: 15000,
browserOptions: {
proxy_country: "ANY",
session_name: "Crawl",
session_recording: true,
session_ttl: 900,
},
}
);
console.log(result);
})();
Crawleando Subpáginas
Crawleie um site e suas páginas vinculadas para extrair dados abrangentes. Para uso detalhado, confira a Referência da API Crawl
Por padrão, o crawl ignora sublinks que não fazem parte da hierarquia de URL que você especifica. Por exemplo, crawlear https://example.com/products/ não captaria páginas em https://example.com/promotions/deal-567. Para incluir esses links, ative o parâmetro allowBackwardLinks
.
O Scrapeless expõe endpoints para iniciar uma solicitação de crawl e obter seu status e resultados. Por padrão, o crawl é gerenciado de forma assíncrona: inicie o trabalho primeiro, depois verifique seu status até que seja concluído. No entanto, com nossos SDKs, fornecemos uma função simples que lida com todo o fluxo e retorna os dados assim que o trabalho estiver concluído.
Instalação
npm install @scrapeless-ai/sdk
pnpm add @scrapeless-ai/sdk
Uso
import { ScrapingCrawl } from "@scrapeless-ai/sdk";
// Inicializa o cliente
const client = new ScrapingCrawl({
apiKey: "your-api-key", // Obtenha sua chave de API em https://scrapeless.com
});
(async () => {
const result = await client.crawlUrl(
"https://example.com",
{
limit: 2,
scrapeOptions: {
formats: ["markdown", "html", "links"],
onlyMainContent: false,
timeout: 15000,
},
browserOptions: {
proxy_country: "ANY",
session_name: "Crawl",
session_recording: true,
session_ttl: 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 crawleada tem seu próprio status de completed
ou failed
e pode ter seu próprio campo de erro, então tome cuidado com isso.
Para ver o esquema completo, confira a Referência da API.
Configurações do Navegador
Você também pode fornecer configurações para a sessão usada para executar o trabalho de raspagem ao criar uma nova sessão; isso pode incluir o uso de um proxy.
Para uma lista completa de parâmetros disponíveis, consulte a Referência da API ou Parâmetros do Navegador.
import { ScrapingCrawl } from "@scrapeless-ai/sdk";
// Inicializa o cliente
const client = new ScrapingCrawl({
apiKey: "your-api-key", // Obtenha sua chave de API em https://scrapeless.com
});
(async () => {
const result = await client.crawlUrl(
"https://example.com",
{
limit: 2,
browserOptions: {
proxy_country: "ANY",
session_name: "Crawl",
session_recording: true,
session_ttl: 900,
},
}
);
console.log(result);
})();
Configurações de Raspagem
Você também pode especificar parâmetros opcionais para o trabalho de raspagem, como formatos de resposta, habilitando a extração apenas do conteúdo principal, definindo um tempo limite máximo de navegação na página e muito mais.
import { ScrapingCrawl } from "@scrapeless-ai/sdk";
// Inicializa o cliente
const client = new ScrapingCrawl({
apiKey: "your-api-key", // Obtenha sua chave de API em 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.