Proyecto de rastreador de intercambio de nube de Baidu
Hay varios proyectos de código abierto de este tipo en GitHub, pero solo proporcionan la parte del rastreador. Este proyecto también agrega módulos para guardar datos y establecer índices de búsqueda elástica basados en el rastreador. Se puede usar en entornos de producción reales, pero el módulo web aún se puede usar. necesario desarrollarlo usted mismo.
Instalar
Instale node.js y pm2. El nodo se usa para ejecutar rastreadores y programas de indexación, y pm2 se usa para administrar las tareas del nodo.
Instale mysql y mongodb. Mysql se usa para guardar los datos del rastreador y mongodb se usa para guardar los datos finales compartidos de Baidu Cloud. Estos datos están en formato json y es más conveniente guardarlos con mongodb.
gitclonehttps://github.com/callmelanmao/yunshare
cnpmi
Se recomienda utilizar el comando cnpm para instalar las dependencias de npm, el método de instalación más simple.
$npminstall-gcnpm--registry=https://registry.npm.taobao.org
Puede encontrar más comandos para instalar cnpm en npm.taobao.org.
inicialización
Los datos del rastreador (principalmente la lista de URL) se guardan en la base de datos mysql. Yunshare usa sequelizejs para el mapeo ORM. El archivo fuente está en src/models/index.js. El nombre de usuario y la contraseña predeterminados de mysql son root. Puede. Necesita crear manualmente la base de datos yun.
base de datos creada y caracteres predeterminados tutf8
Cambie la contraseña según sus necesidades. Después de completar la configuración de mysql, puede ejecutar el siguiente comando.
gulpbabel
nodedist/script/init.js
Tenga en cuenta que primero debe ejecutar gulpbabel para compilar el código es6 en es5 y luego ejecutar el script de inicialización para importar los datos iniciales. El archivo de datos está en data/hot.json, que se encuentra en la página http://yun.baidu. .com/pcloud/friend/gethotuserlist? type=1&from=feed&start=0&limit=24&bdstoken=ac95ef31d3979f6ee707ef75cee9f5c5&clienttype=0&web=1 guardado.
iniciar un proyecto
Yunshare usa pm2 para la administración de procesos de nodejs. Ejecute pm2startprocess.json para iniciar todas las tareas en segundo plano. Para verificar si las tareas se están ejecutando normalmente, puede usar el comando pm2list.
Iniciar índice de búsqueda elástica
El programa de índice elasticsearch también se ha escrito. El archivo de mapeo está en data/mapping.json. Asegúrese de haber instalado la versión elasticsearch5.0 antes de ejecutar el programa de índice, comando pm2startdist/elastic.js.
La dirección de elasticsearch predeterminada es http://localhost:9200. Si necesita modificar esta dirección, puede modificarla en src/ElasticWorker.js. Después de modificar cualquier código fuente js, recuerde ejecutar gulpbabel y reiniciar la tarea pm2. la modificación no surtirá efecto.
Después de completar la configuración de elasticsearch, también puede agregar una tarea elástica en Process.json para que no necesite iniciar el programa de indexación por separado.
Documentos relacionados
Modelo de rastreador nodejs simple y eficiente
MANIFESTACIÓN