Skip to content

Latest commit

 

History

History
74 lines (53 loc) · 1.87 KB

README.md

File metadata and controls

74 lines (53 loc) · 1.87 KB

pmSpider

定时从aqistudy抓取空气质量数据

造福大气科研工作者[并不简单]

license node nodejs

文件目录

|---citys
|---common
|-----userAgents.json
|-----updateCookie.js
|---dbHandler
|-----databaseUtil.js
|-----DB_CONFIG.js
|---getData
|-----getServerData.js
|-----getData.js
|-----sendPost.js
|---output
|---index.js
|---output.js
|---package.json

文件功能介绍

index.js

启动入口文件,开启定时任务,每小时抓取一次,并输出相关信息

getData.js

通过对网站进行分析,设置cookie,绑定城市信息,调起 getServerData.js

getServerData.js

对请求参数进行加密,对返回参数进行解密,得到json数据串

databaseUtil.js

将获取到的数据保存到mongodb中,方便后续处理

getCityList.js&&raw.txt

将需要拉取的城市整理为一个数组,在启动时调用

updateCookie.js

网站cookie的生成器,避免cookie过期失效,可以设置为定期更新

userAgents.json

防止爬虫被墙,储备的userAgent 但是目前没有发现该网站有对ua进行识别,后期可做成定期更换

output.js&&outputRule.js

将保存在数据库中的数据保存为Excel文件 outputRule.js 中为提取数据的限制条件,需要按照给出的 key 格式书写

TODOS

  • 增加容错机制,在遇到异常时保证程序可以自动选择解决方案
  • 优化代码配置
  • 通过echart等工具,将数据可视化

联系作者

[email protected]

[email protected]

http://carlzz.cc/