O GPT-Crawler é uma ferramenta de código aberto desenvolvida pela equipe do BuilderIO e hospedada no GitHub. Ele rastreia o conteúdo da página inserindo um ou mais URLs de sites, gerando documentos de conhecimento estruturado (output.json) para criar assistentes personalizados de GPT ou IA. Os usuários podem configurar regras de rastreamento, como especificar um URL inicial e um seletor de conteúdo, e a ferramenta extrai automaticamente o texto e o organiza em arquivos. A ferramenta é fácil de usar e oferece suporte a execuções locais, implementações de contêineres do Docker e chamadas de API, o que a torna ideal para que os desenvolvedores criem rapidamente assistentes de IA proprietários a partir do conteúdo do site. Até o momento, ela está ganhando força na comunidade tecnológica, popular por sua eficiência e natureza de código aberto.

Lista de funções
- Rastreia o conteúdo do site a partir de um ou mais URLs, gerando
output.jsonDocumentação. - Suporte a regras de rastreamento personalizadas, incluindo URLs iniciais, padrões de correspondência de links e seletores CSS.
- Capacidade de lidar com páginas dinâmicas da Web e rastrear conteúdo renderizado no lado do cliente usando um navegador sem cabeça.
- Fornece uma interface de API para iniciar tarefas de rastreamento por meio de solicitações POST.
- Suporta a configuração do número máximo de páginas (
maxPagesToCrawl), tamanho do documento (maxFileSize) e o número de tokens (maxTokens)。 - Os arquivos gerados podem ser carregados diretamente no OpenAI para a criação de GPTs personalizados ou assistentes de IA.
- Suporta a execução de contêineres Docker, fácil de implementar em diferentes ambientes.
- Tipos específicos de recursos (por exemplo, imagens, vídeos, etc.) podem ser excluídos para otimizar a eficiência do rastreamento.
Usando a Ajuda
Instalação e operação (modo local)
O GPT-Crawler foi desenvolvido com base no Node.js e precisa ser instalado para ser executado. Aqui estão as etapas detalhadas:
- Verificação do ambiente
Certifique-se de que seu computador tenha o Node.js (versão 16 ou superior) e o npm instalados. Execute o seguinte comando para confirmar:
node -v
npm -v
Se você não o tiver, faça o download e instale-o no site do Node.js.
- projeto de clonagem
Faça o download do projeto localmente digitando o comando no terminal:
git clone https://github.com/BuilderIO/gpt-crawler.git
- Acesso ao catálogo
Quando o download estiver concluído, vá para a pasta do projeto:
cd gpt-crawler
- Instalação de dependências
Execute o seguinte comando para instalar os pacotes necessários:
npm install
- Configuração do rastreador
show (um ingresso)config.tsmodifique os parâmetros de rastreamento. Por exemplo, para rastrear o documento Builder.io:
export const defaultConfig: Config = {
url: "https://www.builder.io/c/docs/developers",
match: "https://www.builder.io/c/docs/**",
selector: ".docs-builder-container",
maxPagesToCrawl: 50,
outputFileName: "output.json"
};
urlEndereço de rastreamento inicial.matchPadrão de correspondência de link com suporte a curinga.selectorSeletor CSS para extração de conteúdo.maxPagesToCrawlNúmero máximo de páginas a serem rastreadas.outputFileNameNome do arquivo de saída.
- Executando o rastreador
Quando a configuração estiver concluída, execute o seguinte comando para iniciar o rastreamento:
npm start
Após a conclusão.output.json é gerado no diretório raiz do projeto.
Modos alternativos de operação
Usando contêineres do Docker
- Certifique-se de que o Docker esteja instalado (baixado do site do Docker).
- entrar em
containerappPasta, Editarconfig.ts。 - Execute o seguinte comando para criar e iniciar o contêiner:
docker build -t gpt-crawler .
docker run -v $(pwd)/data:/app/data gpt-crawler
- O arquivo de saída é gerado no
datapasta.
Execução com a API
- Depois de instalar as dependências, inicie o serviço de API:
npm run start:server
- O serviço é executado por padrão no
http://localhost:3000。 - Enviar uma solicitação POST para
/crawl, por exemplo:
curl -X POST http://localhost:3000/crawl -H "Content-Type: application/json" -d '{"url":"https://example.com","match":"https://example.com/**","selector":"body","maxPagesToCrawl":10,"outputFileName":"output.json"}'
- acessível
/api-docsVeja a documentação da API (baseada no Swagger).
Fazer upload para o OpenAI
- Criação de GPTs personalizados
- Chat abertoGPT.
- Clique em seu nome no canto inferior esquerdo e selecione "My GPTs" (Meus GPTs).
- Clique em "Create a GPT" (Criar uma GPT) > "Configure" (Configurar) > "Knowledge" (Conhecimento).
- carregar
output.jsonDocumentação. - Se o arquivo for muito grande, o
config.tsconfigurarmaxFileSize或maxTokensArquivo dividido.
- Criação de assistentes personalizados
- Abra a plataforma OpenAI.
- Clique em "+ Create" > "Upload".
- carregar
output.jsonDocumentação.
Funções
- Rastreamento de conteúdo
indicar com clareza e certezaurl和selectorDepois disso, a ferramenta extrai o texto da página. Por exemplo..docs-builder-containerPegue apenas o conteúdo da região. - Gerar arquivos
O formato do arquivo de saída é:
[{"title": "页面标题", "url": "https://example.com/page", "html": "提取的文本"}, ...]
- Produção otimizada
fazer uso deresourceExclusionsExcluir recursos estranhos (por exemplopng、jpg), reduzindo o tamanho do arquivo.
advertência
- É necessário ter uma conta paga da OpenAI para criar GPTs personalizados.
- O rastreamento dinâmico da Web depende de navegadores sem cabeça para garantir a integridade da dependência.
- A configuração pode ser ajustada para dividir o upload quando o arquivo for muito grande.
cenário do aplicativo
- Assistente de suporte técnico
Rastreie sites de documentação de produtos para gerar assistentes de IA que ajudem os usuários a responder perguntas técnicas. - Ferramentas de organização de conteúdo
Obtenha artigos de blogs ou sites de notícias para criar uma base de conhecimento ou um assistente de perguntas e respostas. - Assistente de educação e treinamento
Rastrear páginas de cursos on-line para gerar assistentes de aprendizagem que fornecem respostas relacionadas ao curso.
QA
- É possível rastrear vários sites?
Pode. Noconfig.tsBasta definir vários URLs e regras de correspondência no - E se o arquivo for muito grande para ser carregado?
configurarmaxFileSize或maxTokensdivide o arquivo em vários arquivos menores. - Vocês oferecem suporte a sites chineses?
Suporte. Desde que o conteúdo do site possa ser analisado por navegadores sem cabeça, ele pode ser rastreado corretamente.






























