Pipedream
O que é o Pipedream?
Pipedream é uma poderosa plataforma de integração serverless que permite aos desenvolvedores conectar facilmente centenas de aplicativos e APIs, possibilitando a construção rápida de fluxos de trabalho automatizados. Os usuários podem escrever lógica personalizada usando JavaScript, Python e outras linguagens sem gerenciar nenhuma infraestrutura.
Ele oferece suporte a arquitetura orientada a eventos e integra-se com serviços populares como Slack, Notion, GitHub e Stripe. O Pipedream é especialmente adequado para criar webhooks, sincronização de dados, sistemas de notificação e outros cenários de automação, aumentando significativamente a eficiência e a flexibilidade do desenvolvimento.
Scrapeless fornece os seguintes módulos dentro do Pipedream:
- Crawler
- Crawler Scrape: Extraia dados de uma única página da web.
- Crawler Crawl: Rastreie um site e suas páginas vinculadas para extrair dados abrangentes.
- Scraping API
- Acesse e recupere facilmente dados de pesquisa avançados do Google SERP e do Google Trends.
- Web Unlocker API
- Acesse páginas protegidas ou dinâmicas. Lida automaticamente com mecanismos anti-scraping.

Introdução
Neste guia, vou orientá-lo sobre como configurar o Scrapeless com o Pipedream. Com apenas algumas configurações básicas, você pode coletar e processar automaticamente dados extraídos de qualquer mecanismo de busca.
Primeiro, você precisará concluir a seguinte configuração:
- Chave de API do Scrapeless: cadastre-se para uma conta Scrapeless. Depois de registrado, você pode acessar sua chave de API no painel.

- Conta Pipedream: Crie uma conta Pipedream.
Configure sua chave de API do Scrapeless no Pipedream
Você precisa fazer login na sua conta Scrapeless e ir ao painel para obter sua chave de API. Depois de tê-la, vá até a aba “Accounts” no Pipedream e adicione a chave lá, conforme mostrado abaixo:

Em seguida, defina sua chave de API assim:

Faça sua primeira solicitação de API
Usaremos a integração do Scrapeless com o Pipedream para buscar dados da API do Scrapeless. Primeiro, crie um novo fluxo de trabalho. No painel do Pipedream, clique no botão “New Workflow”. Isso abrirá uma nova janela de criação de fluxo de trabalho:

Etapa 1. Configure a etapa de gatilho
Escolha se deseja acionar o fluxo de trabalho manualmente ou automaticamente usando um webhook, uma solicitação HTTP ou qualquer outro gatilho disponível.
Para os fins deste tutorial, usaremos um Scheduled Trigger para iniciar o fluxo de trabalho. Você pode ajustar isso mais tarde para usar outros gatilhos, como execução manual ou ações orientadas a eventos.
Deve ficar assim:

Após salvar, você poderá usar esse gatilho no seu fluxo de trabalho. Agora podemos prosseguir para configurar a etapa de ação.
Etapa 2. Configure a etapa de ação
- Agora, vamos adicionar uma etapa de ação ao fluxo de trabalho do Pipedream. No menu suspenso Actions, selecione Scrapeless:

Estas são as ações possíveis:

- Em seguida, adicione a conta onde você configurou sua chave de API a este procedimento:

Uma vez concluído, você pode adicionar todos os outros parâmetros e testar a consulta. Assim como nas etapas acima, você agora configurou sua primeira solicitação no Pipedream.
Em seguida, após configurá-la com base no seu caso de uso, você estará pronto para implantá-la.
Como criar um sistema de rastreamento inteligente de Knowledge Graph
Pré-requisitos
- Você se registrou no Scrapeless e obteve um token de API.
- Você tem uma URL de Webhook do Discord (para enviar notificações).
Etapa 1: Adicione um gatilho
- Tipo: Schedule
- Horário do gatilho: Todos os dias às 08:00 (UTC)
- Método: Use Cron ou um intervalo de tempo fixo

Etapa 2: Configure os parâmetros
Componente:
google-search
Configurações de parâmetros:
query: coffeegl: us (opcional)hl: en (opcional)

Etapa 3: Extraia as informações
Esta etapa extrai as informações do painel de conhecimento a partir dos dados de palavra-chave obtidos na etapa anterior.
Adicione uma etapa de código Node.js com o seguinte código:
export default defineComponent({
async run({ steps }) {
const searchResult = steps.scrape_google?.$return_value;
const webResults = searchResult?.knowledge_graph.web_results
if (!searchResult || !webResults) {
throw new Error("❌ No valid results returned from Scrapeless Google Search.");
}
const links = webResults.map((item) => item.link)
return {
links,
};
}
});Etapa 4: Envie a notificação do Discord
Esta etapa envia as informações obtidas na Etapa 3 para o canal do Discord especificado.
Adicione uma etapa Node.js com o seguinte código de exemplo:
import { axios } from "@pipedream/platform";
export default defineComponent({
async run({ steps, $ }) {
const results = steps.extract_coffee_search_results.$return_value?.links || []
console.log("result", results)
const sendLinks = results.slice(0, 5)
if (!sendLinks || sendLinks.length === 0) {
console.log("✅ No search results to notify.");
return { status: "no_results" };
}
const webhookUrl = "https://discord.com/api/webhooks/1381829187223949404/mweRKdQfJmA5OskoSZ0V_IApucOrMK7AHxN4YaAvjE3SRzp1xnbK4SFZLvMYjwnIFy1V"; // 🟡 Please replace it with your webhook
const lines = sendLinks.map(r => `📌 ${r}`).join("\n\n");
const message = {
content: `📡 **Keyword Monitor: "coffee"**\n\n${lines}\n\n⏰ Detected at: ${new Date().toLocaleString()}`
};
try {
const res = await axios($, {
method: "POST",
url: webhookUrl,
headers: {
"Content-Type": "application/json"
},
data: message,
});
return { status: "sent", res };
} catch (err) {
console.error("❌ Discord webhook failed:", err);
return { status: "error", error: err.message };
}
},
});Substitua a URL nesta linha pelo seu próprio Webhook do Discord:
const webhookUrl = "https://discord.com/api/webhooks/your_webhook_id/your_webhook_token";Se você ainda não tem um Webhook, pode criar um no Discord da seguinte forma:
- Abra o canal onde deseja enviar notificações.
- Clique em Channel Settings > Integrations > Webhooks.
- Crie um novo Webhook e copie sua URL para usar como o
webhookUrlmencionado acima.
Prévia (mensagem enviada)
Quando a página do Jasper.ai mudar, você receberá uma mensagem como esta no Discord:
