# wm_spider **Repository Path**: febby315/wm_spider ## Basic Information - **Project Name**: wm_spider - **Description**: 基于golang和nodejs、phantomjs的简单爬虫 - **Primary Language**: Go - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-04-13 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 一套基于Nodejs语言、Go语言开发的爬虫服务 ## 模型架构 ```mermaid graph LR MD((MongoDB数据库)) TM{TaskManager
任务管理器} SN{spider_name
数据集散中心} DL{download_img
图片附件下载} ss(spider_new
爬虫步骤
s1-s9) ml>mongo_list
数据查询接口] ems>etl_mongo_src
数据同步接口] etl(etl_do_*
数据同步中间件) solr((Apache Solr
Solr搜索引擎)) mq{ActiveMQ
消息队列} hmr(http_mq_receive
消息转发) ny{nytt_yhhx
用户画像
独立库} ns>nytt_solr
数据同步接收接口] TM===|1.读写|MD TM==>|2.动态调度|ss ss==>|3.请求/5.处理/6.提交|SN SN===|4.读取/7.写入|MD ss-->|3.请求/5.处理/6.提交
图片附件下载步骤:s6|DL DL---|4.读取/7.写入|MD MD==>|8.读取|ml MD==>|8.读取|ems etl-.->|请求|ems etl-.->|推送|ns solr===|读写|ns ns-->|推送|mq ny-->|请求|ns hmr-.->|订阅|mq hmr-.->|推送|ny ``` spider_new模块包含s1-s9(共9个步骤:详情请查看spider_new目录下的README.md文件) ## 1. 技术框架 > - **Nodejs语言** *步骤主体开发语言,方便解析html* > - **Go语言** *接口开发:用户大部分接口及服务* > - **Phantomjs** *无头浏览器:用于获取渲染后的HTML* > - **MongoDB数据库** *数据持久化* > - **Solr** *加速查询:分词查询* > - **ActiveMQ** *消息通知:通知记录用户画像* ## 2. 目录说明 ### 2.1 任务管理器 > **TaskManager_go** 任务管理器接口服务 > **TaskManger_Web** 任务管理器WEB服务 ### 2.2 爬虫核心业务服务及接口 > **spider_name** 爬虫数据集散中心服务 > **download_img** 附件下载服务 > **spider_new** 爬虫业务步骤 > **etl_mongo_src** Mongo数据查询接口服务 ### 2.3 数据同步中间件 > **etl_do_tagArticle** 文章信息同步中间件 > **etl_do_sell** 供应信息同步中间件 > **etl_do_buy** 求购信息同步中间件 > **etl_do_price** 价格信息同步中间件 > **etl_do_recruit** 招聘信息同步中间件 > **etl_do_download** 图片附件同步中间件 ### 2.4 接收服务 > **nytt_solr** Solr接收与查询接口 > **etl_tar_download** 图片附件接收服务 ### 2.5 其他服务 > **mongo_list** 等同etl_mongo_src服务部分接口 > **nytt_yhhx** 用户画像(用于记录用户兴趣内容) > **http_mq_receive** MQ消息队列接收端 > **http_mq_send** MQ消息队列发送端(仅用于测试) ### 2.6 政务云 舆情业务 > **zwy** 政务云>廉政云>舆情业务(定制业务)