O LittleCrawler é uma estrutura moderna de coleta de dados de mídia social criada com base nas técnicas de programação assíncrona do Python. Ele foi projetado para desenvolvedores e analistas de dados que precisam obter dados públicos de mídia social e é capaz de automatizar a coleta de informações das principais plataformas sociais (atualmente com suporte para Xiaohongshu, Zhihu e Idle Fish/Small Yellow Fish). Diferentemente dos rastreadores tradicionais de script único, o LittleCrawler oferece uma solução completa que não apenas suporta a execução rápida de tarefas por meio da linha de comando (CLI), mas também tem uma interface de back-end integrada e visível na Web baseada em FastAPI e Next.js, o que facilita aos usuários o gerenciamento de tarefas e o monitoramento do status do tempo de execução por meio de uma interface gráfica. A tecnologia de automação do navegador Playwright subjacente oferece suporte ao modo CDP (Chrome DevTools Protocol), que pode lidar com eficácia com a complexa detecção de rastreadores e garantir a estabilidade e a taxa de sucesso da coleta de dados. Seja para salvar como uma simples tabela CSV/Excel ou para depositar em bancos de dados MySQL/MongoDB, ele pode lidar facilmente com a situação e é realmente um serviço completo, da coleta ao armazenamento.

Lista de funções
- Suporte a várias plataformasSuporte ao núcleo atualPequeno Livro Vermelho (xhs)、Zhihu (zhihu) 和 Idle Fish (xhy/xy) Coleta de dados em três plataformas.
- Vários modos de aquisição:
- Captura de pesquisaRastreamento de resultados de pesquisa em lote com base em palavras-chave personalizadas (Keywords).
- Captura de detalhes: Obtenha detalhes e comentários sobre artigos, notas ou produtos específicos.
- Coleção da página inicialCreator: rastreia todo o conteúdo disponível publicamente na página inicial de um determinado Creator.
- Back-end visual da WebO moderno painel da Web reduz as barreiras à operação, permitindo a configuração de tarefas, o lançamento de rastreadores e a visualização de status em tempo real, tudo a partir do navegador.
- Armazenamento flexível de dadosSuporte para salvar os dados coletados em vários formatos, incluindo arquivos locais (CSV, JSON, Excel) e bancos de dados (SQLite, MySQL, MongoDB), para atender às necessidades de processamento de dados de diferentes cenários.
- Fortes recursos de contra-detecçãoModo CDP (Chrome DevTools Protocol) integrado, que simula o comportamento real do usuário e aumenta drasticamente a probabilidade de passar na detecção de segurança da plataforma.
- Vários métodos de loginQRCode, código de autenticação de telefone celular e logins de cookies são suportados para que os usuários gerenciem suas sessões de conta.
- Arquitetura de alto desempenho: baseado no Python 3.11+ e no design de E/S assíncrono, com o
uvFerramenta de gerenciamento de pacotes extremamente rápida, que é executada de forma eficiente e com um consumo controlado de recursos.
Usando a Ajuda
O LittleCrawler oferece opções de linha de comando (CLI) e interface da Web. Para obter a melhor experiência, é recomendável que você tenha o Python 3.11 ou superior instalado em seu computador.
1. instalação e configuração do ambiente
Primeiro, você precisa fazer o download do código do projeto localmente e instalar as dependências. Recomenda-se usar o arquivo uv Executar o gerenciamento de dependências (mais rápido) e também usar o padrão pip。
Etapa 1: Obter o código
Abra um terminal ou prompt de comando e execute o seguinte comando:
git clone https://github.com/pbeenig/LittleCrawler.git
cd LittleCrawler
Etapa 2: Instalar dependências
fazer uso de uv Instalação (recomendada):
uv sync
playwright install chromium
Ou use pip Instalação:
pip install -r requirements.txt
playwright install chromium
2. operação da linha de comando (CLI)
Essa é a maneira mais rápida de começar a coletar e é adequada para usuários que estão acostumados a usar um terminal.
Parâmetros de configuração
Você pode editar diretamente o config/base_config.py para definir os parâmetros padrão:
PLATFORM: Define a plataforma de destino, por exemplo."xhs"(Pequeno Livro Vermelho),"zhihu"(Conhecer).KEYWORDSDefina as palavras-chave de pesquisa, por exemplo."iphone16, 摄影技巧"。CRAWLER_TYPETipo de coleção: Defina o tipo de coleção, por exemplo."search"(Pesquisar),"detail"(Detalhes).SAVE_DATA_OPTIONFormato de salvamento: defina o formato de salvamento, por exemplo."csv"或"excel"。
Iniciar o rastreador
É executado com a configuração padrão:
python main.py
Ou execute-o com os parâmetros especificados na linha de comando (substituindo a configuração padrão):
# 示例:在小红书搜索关键词并采集
python main.py --platform xhs --type search
# 示例:初始化 SQLite 数据库
python main.py --init-db sqlite
3. operação de back-end visível na Web
Se preferir uma interface gráfica, você pode iniciar o back-end da Web incorporado.
Etapa 1: Compilar a página de front-end
Vá para o diretório da Web e crie os recursos da interface (o Node.js precisa estar instalado):
cd ./web
npm run build
Observação: você pode pular esta etapa se quiser apenas executar a API de backend sem a interface.
Etapa 2: Iniciar o serviço completo
Volte ao diretório raiz do projeto e inicie o serviço de backend:
# 启动 API 和前端页面
uv run uvicorn api.main:app --port 8080 --reload
Etapa 3: acessar a interface
Abra seu navegador e acesse http://127.0.0.1:8080. Você verá um console modernizado no qual poderá trabalhar:
- Tarefas de configuraçãoDigite palavras-chave, selecione a plataforma e o modo de rastreamento na interface.
- Passe o dedo para fazer login.Visualização do código QR de login e sua leitura diretamente na página da Web.
- estado de monitoramentoVisualização em tempo real do registro de execução do rastreador e do progresso da coleta.
- Visualizar dadosSuporte parcial para visualização direta dos resultados dos dados coletados.
Perguntas frequentes e manutenção
- Limpando o cacheSe você encontrar um erro de tempo de execução, tente limpar os arquivos temporários.
# 清除缓存命令 find . -type d -name "__pycache__" -exec rm -rf {} + - Exportação de dadosApós a conclusão da coleta, os dados serão salvos por padrão na pasta
data/o nome do arquivo geralmente contém um registro de data e hora para facilitar o gerenciamento do arquivo.
cenário do aplicativo
- Pesquisa de mercado de comércio eletrônico
Ao capturar os preços e as descrições de produtos de segunda mão no Idle Fish (Xiaoyuangyu), analisamos as condições do mercado secundário e as taxas de retenção de valor de produtos específicos (por exemplo, eletrônicos, produtos de luxo) para auxiliar nas decisões de preços. - Análise de conteúdo de mídia social
As operadoras podem capturar notas populares, comentários e informações de blogueiros no Xiaohongshu e analisar palavras-chave, tendências de tópicos e preferências de usuários para conteúdo pop-up, de modo a otimizar sua estratégia de criação de conteúdo. - Pesquisa acadêmica e monitoramento da opinião pública
Os pesquisadores podem usar a ferramenta para rastrear perguntas e respostas e artigos no Zhihu para coletar opiniões públicas e discussões sobre tópicos sociais específicos ou produtos de tecnologia para a construção de corpus de processamento de linguagem natural (NLP) ou análise de opinião. - Monitoramento de concorrentes
As marcas podem capturar regularmente o feedback dos usuários e as informações sobre a atividade dos concorrentes nas principais plataformas sociais para se manterem a par da dinâmica dos concorrentes e das reações do mercado.
QA
- Quais sistemas operacionais são compatíveis com essa ferramenta?
Windows, macOS e Linux são compatíveis e, graças ao Playwright, qualquer sistema que possa executar o navegador Chromium é teoricamente compatível. - O que devo fazer se encontrar uma validação anti-subida (por exemplo, CAPTCHA deslizante)?
A ferramenta tem um modo CDP integrado, que pode simular impressões digitais reais do navegador e reduzir a probabilidade de acionar a autenticação. No entanto, ele ainda pode ser acionado em aquisições de alta frequência, portanto, é recomendável reduzir a frequência de aquisição adequadamente ou configurar o IP do proxy (defina-o no arquivo de configuração).ENABLE_IP_PROXY = True)。 - Os dados coletados podem ser salvos em meu próprio banco de dados?
Você pode. No arquivo de configuração, coloqueSAVE_DATA_OPTIONdefinido comomysql或mongodbe preencha suas informações de conexão com o banco de dados (endereço, número da conta, senha) no parágrafo de configuração correspondente. - Por que a instalação é solicitada por uma mensagem de falta de
uv?
uvé uma ferramenta de gerenciamento de pacotes Python em ascensão; se você não a tiver instalada, poderá usar opip install uvpara instalar, ou simplesmente pule ouvusando o comando padrãopip和pythonem vez disso.






























