Flujo de trabajo de Weibo Terminator
Este proyecto es la versión reiniciada del proyecto anterior. Aquí está la dirección del proyecto anterior, el proyecto permanecerá actualizado. Esta es la versión de trabajo de Weibo Terminator. Esta versión ha hecho algunas optimizaciones para la versión anterior. El objetivo final aquí es rastrear el corpus, incluido el análisis de sentimientos, el corpus de diálogo, el control de riesgos de opinión pública, el análisis de big data y otras aplicaciones.
Actualización 2017-5-16
renovar:
- Ajustó la primera lógica de adquisición de cookies, y si el programa no detecta cookies, saldrá, evitando el rastreo de más contenido y fallas;
- Se ha agregado la clase Weiboscraperm, que todavía está en construcción. La implementación de PRIT PR es bienvenida. Esta clase implementa principalmente que se arrastra de otro nombre de dominio de Weibo, es decir, el nombre de dominio móvil;
Puedes extraer la actualización.
Actualización 2017-5-15
Después de algunas modificaciones menores y el PR de varios contribuyentes, el código ha sufrido algunos cambios menores. Básicamente, está arreglando errores y mejorando algunas lógicas, y las modificaciones son las siguientes:
- Se solucionó el problema de ahorro de error. Cuando presiona la primera vez, necesita extraer el código de clon;
- El error de
WeiboScraper has not attribute weibo_content , el nuevo código se ha solucionado;
@Fence Envíe PR para modificar algún contenido:
- El descanso original de los 30s fijos se reemplaza con un tiempo aleatorio, y los parámetros específicos se pueden definir por usted mismo.
- Se agregó BIG_V_IDS_FILE para registrar los ID de celebridad que se han guardado para los fanáticos; Use el formato TXT para facilitar el contribuyente a agregar y eliminar manualmente
- Las páginas de rastreo de ambas funciones se han cambiado a la página+1 para evitar el rastreo repetido cuando el punto de interrupción continúa arrastrándose.
- Cambie el "todos Weibo y los comentarios originales después de rastrear una identificación" a "Guardar después de arrastrar un tweet y comentarios después de arrastrar un tweet"
- (Opcional) Ponga la parte que guarda el archivo como una función por separado, porque hay 2 y 3 lugares para guardar respectivamente.
Puede git pull origin master para obtener la versión recientemente actualizada. Al mismo tiempo, puede continuar pidiéndome por uuid. Publicaré regularmente la lista en contirbutor.txt . He estado haciendo trabajo de fusión de datos recientemente, así como la limpieza de datos, clasificación, etc. Después de completar el trabajo de fusión, distribuiré el conjunto de Big Data a todos.
Mejorar
Las siguientes mejoras se realizaron a la versión anterior:
- Sin demasiadas distracciones, vaya directamente al tema, dé la identificación, obtenga todo Weibo, el número de Weibo, el número de fanáticos, todo el contenido de Weibo y el contenido de comentarios del usuario;
- A diferencia de la versión anterior, esta vez nuestra filosofía es guardar todos los datos en tres archivos de encurtidos y almacenarlos en archivos de diccionario. El propósito de esto es facilitar el rastreo de puntos de ruptura;
- Al mismo tiempo, el rastreador que se ha arrastrado no se arrastrará nuevamente, lo que significa que el rastreador recordará la identificación de rastreo. Después de que cada identificación haya obtenido todo el contenido, se marcará como rastreado;
- Además, el contenido de Weibo y los comentarios de Weibo se separan por separado. Hay una interrupción durante el rastreo del contenido de Weibo. La segunda vez no se rastreará nuevamente, y el número de página interrumpido continuará arrastrándose desde el número de página interrumpido;
- ¡Lo que es más importante es! ! ! Cada rastreo de identificación no tiene ningún efecto entre sí. Puede recuperar directamente cualquier contenido de identificación de la identificación que desee del archivo de Pickle, ¡y puede hacer cualquier procesamiento! !
- Además, se probó la nueva estrategia anti-rastreo, y el mecanismo de retraso adoptado pudo funcionar bien, pero no estaba completamente descontrolado.
¡Lo que es más importante es! ! ! , En esta versión, la inteligencia del rastreador ha mejorado considerablemente. Cuando Crawler se arrastra cada identificación, ¡obtendrá automáticamente todas las ID de ventilador de la ID! ! Es equivalente a que lo que le doy es ID de semilla, y las identificaciones de semillas son las identificaciones de algunas celebridades, empresas o medios de comunicación Big vs. ¡De estos ID de semillas, ¡puede obtener miles de otras identificaciones de semillas! ! Si un fanático de las celebridades tiene 34,000, puede obtener 34,000 identificaciones por primera vez que se arrastra y luego continúa gateando de la identificación del niño. ¡Cada identificación infantil tiene 100 fanáticos, y la segunda vez puede obtener 3.4 millones de identificaciones! ! ! ¿Es suficiente? ! ! ! ¡Por supuesto que no es suficiente! ! !
¡Nuestro proyecto nunca se detendrá! ! ! ¡Continuará hasta que se coseche suficiente corpus! ! !
(Por supuesto que no podemos obtener todos los fanáticos, pero estos son suficientes).
Flujo de trabajo
El objetivo de esta versión es apuntar al contribuyente, y nuestro flujo de trabajo también es muy simple:
- Consigue uuid. Este UUID puede llamar a 2-3 ID de distribución_ids.pkl. Esta es nuestra identificación de semillas. Por supuesto, también puede obtener directamente todas las ID. Sin embargo, para evitar el trabajo duplicado, se recomienda que me solicite un UUID. Solo eres responsable de tu uno. Después de rastrearse, me devolverá el archivo final. Después de ordenar la carga pesada, distribuiré el gran corpus final a todos.
- Ejecute
python3 main.py uuid , permítanme explicar aquí que la identificación del ventilador de rastreo se recuperará después de que la identificación especificada por UUID se rastree; - ¡Hecho!
Conversar
Todavía estoy publicando un grupo de discusión, y todos son bienvenidos a agregar:
QQ
AI智能自然语言处理: 476464663
Tensorflow智能聊天Bot: 621970965
GitHub深度学习开源交流: 263018023
Puedes agregar a mis amigos en WeChat: Jintianiloveu
Derechos de autor
(c) 2017 Jin Fagang & Tianmu Inc. & weibo_terminator authors LICENSE Apache 2.0