Fluxo de trabalho do Terminator Weibo
Este projeto é a versão reiniciada do projeto anterior. Aqui está o endereço anterior do projeto, o projeto permanecerá atualizado. Esta é a versão de trabalho do Weibo Terminator. Esta versão fez algumas otimizações para a versão anterior. O objetivo final aqui é rastejar corpus juntos, incluindo análise de sentimentos, corpus de diálogo, controle de risco de opinião pública, análise de big data e outras aplicações.
Atualização 2017-5-16
renovar:
- Ajustou a primeira lógica de aquisição de cookies e, se o programa não detectar cookies, ele sairá, impedindo o rastreamento de mais conteúdo e travamento;
- A classe Weiboscraperm foi adicionada, que ainda está em construção. A implementação do envio de relações públicas é bem -vinda. Essa classe implementa principalmente rastejando de outro nome de domínio Weibo, ou seja, o nome de domínio móvel;
Você pode puxar a atualização.
Atualização 2017-5-15
Após algumas pequenas modificações e o PR de vários colaboradores, o código passou por algumas pequenas alterações. Basicamente, está corrigindo bugs e melhorando alguma lógica, e as modificações são as seguintes:
- Corrigido o problema da economia de erro. Quando você empurra a primeira vez, precisará puxar o código do clone;
- O erro sobre
WeiboScraper has not attribute weibo_content , o novo código foi corrigido;
@Fence Envie PR para modificar algum conteúdo:
- O restante original dos 30s fixos é substituído por tempo aleatório e os parâmetros específicos podem ser definidos por você.
- Adicionado big_v_ids_file para gravar os IDs de celebridades que foram salvos para os fãs; Use o formato TXT para facilitar o colaborador para adicionar e excluir manualmente
- As páginas de rastreamento de ambas as funções foram alteradas para página+1 para evitar rastejamento repetido quando o ponto de interrupção continua a rastejar.
- Altere o original "All Weibo e Comentários depois de rastejar um id" para "salvar depois de rastejar um tweet e comentários depois de rastejar um tweet"
- (Opcional) Coloque a parte que salva o arquivo como uma função separadamente, porque existem 2 e 3 locais para salvar, respectivamente.
Você pode git pull origin master para obter a versão recém -atualizada. Ao mesmo tempo, você pode continuar me pedindo por UUID. Vou publicar regularmente a lista em contirbutor.txt . Recentemente, tenho feito o trabalho de mesclagem de dados, bem como a limpeza de dados, a classificação etc. Depois que o trabalho de mesclagem for concluído, distribuirei o conjunto de big data para todos.
Melhorar
As seguintes melhorias foram feitas na versão anterior:
- Sem muitas distrações, vá direto ao tópico, dê o ID, obtenha todo o Weibo, número de Weibo, número de fãs, todo o conteúdo do Weibo e comentar o conteúdo do usuário;
- Ao contrário da versão anterior, desta vez nossa filosofia é salvar todos os dados em três arquivos de picles e armazená -los em arquivos de dicionário. O objetivo disso é facilitar o rastreamento do ponto de interrupção;
- Ao mesmo tempo, o rastreador que se arrastou não vai rastejar novamente, o que significa que o rastreador se lembrará da identificação rastejada. Depois que cada ID obtém todo o conteúdo, ele será marcado como rasteado;
- Além disso, o conteúdo do Weibo e os comentários do Weibo são separados separadamente. Há uma interrupção durante o rastreamento do conteúdo do Weibo. A segunda vez que não será rastejada novamente, e o número da página interrompido continuará a se arrastar do número da página interrompida;
- O que é mais importante é! ! ! Cada rastreamento de identificação não tem efeito um no outro. Você pode recuperar diretamente qualquer conteúdo de identificação do ID desejado do arquivo em picles e pode fazer qualquer processamento! !
- Além disso, a nova estratégia anti-crawl foi testada e o mecanismo de atraso adotado foi capaz de funcionar bem, mas não estava completamente descontrolado.
O que é mais importante é! ! ! , Nesta versão, a inteligência do rastreador foi bastante aprimorada. Quando o rastreador rasteja cada ID, ele obterá automaticamente todos os IDs dos fãs do ID! ! É equivalente a que o que eu lhe dou é uma identificação de sementes, e os IDs de sementes são os IDs de algumas celebridades, empresas ou mídia Big vs. A partir desses IDs de sementes, você pode obter milhares de outros IDs de sementes! ! Se um fã de celebridades tiver 34.000, você poderá obter 34.000 IDs pela primeira vez rastejando e continuará rastejando do ID da criança. Cada ID da criança tem 100 fãs e, na segunda vez, você pode obter 3,4 milhões de IDs! ! ! É o suficiente? ! ! ! Claro que não é suficiente! ! !
Nosso projeto nunca vai parar! ! ! Continuará até que o corpus seja colhido! ! !
(Claro que não podemos realmente conseguir todos os fãs, mas isso é suficiente.)
Fluxo de trabalho
O objetivo desta versão é atingir o colaborador, e nosso fluxo de trabalho também é muito simples:
- Obtenha uuid. Este UUID pode ligar para 2-3 IDs de distribution_ids.pkl. Este é o nosso ID de semente. Obviamente, você também pode obter diretamente todos os IDs. No entanto, para evitar o trabalho duplicado, é recomendável que você solicite um UUID de mim. Você é apenas responsável pelo seu. Depois de rastejar, você alimentará o arquivo final para mim. Depois de resolver a carga pesada, distribuirei o grande corpus final para todos.
- Run
python3 main.py uuid , deixe -me explicar aqui que o ID do fã rastreador será recuperado depois que o ID especificado por UUID estiver rasteado; - Feito!
Discutir
Ainda estou postando um grupo de discussão, e todos podem acrescentar:
QQ
AI智能自然语言处理: 476464663
Tensorflow智能聊天Bot: 621970965
GitHub深度学习开源交流: 263018023
Você pode adicionar meus amigos no WeChat: jintianiloveu
Direitos autorais
(c) 2017 Jin Fagang & Tianmu Inc. & weibo_terminator authors LICENSE Apache 2.0