Crawler for taobao mirror.
在局域网(出口有代理)搭建自己的npm仓储(sinopia/cnpm/nexus-npm)后,安装一些包的时候需要绕过代理获取node-sass等资源(这些资源不走npm代理),所以需要本地同步这些镜像。
taobao镜像地址:https://npm.taobao.org/mirrors
感觉需求比较简单,学习现有爬虫如何使用的成本比直接自己写一个还要高。并且出于学习(wan)目的,想多造点轮(wan)子(ju)。
前期打算无图形化操作,只需要能将node-sass的指定版本镜像同步到本地即可。
考虑增加文件下载进度。增加文件已存在的md5校验机制,文件没问题则不重复覆盖。增加下载失败机制,将下载失败的文件放入缓存,下次同步先加载失败列表,同步加载失败的文件。
增加图形化界面,将代码嵌入express框架,前端考虑vue。增加图形化界面下的镜像地址配置、node-sass的下载版本选择、代理配置等功能。
同时需要增加本地文件查询,查询已经存在的文件列表、存储情况的分析等。
增加其他镜像的同步支持,考虑dom分析的关键字(下载的规则)可通过界面配置。
开发使用的node版本为8.11.1。
node app/nCrawler.js
{
"proxy": {
"url": "这里填写代理的地址,不需要加协议头。如果不需要代理,则删除该字段即可",
"name": "代理认证的用户名",
"password": "代理认证的密码"
},
"fileVersion": {
"recentVer": "需要下载的每个镜像包的最近的几个版本,输入4则下载最新的四个版本,输入0为所有版本全部下载"
}
"mirrirName": "需要下载镜像名称"
}