Skip to content

sunchenggit/downSite

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

基于node.js的扒站小工具

使用

  1. npm i
  2. node index.js

简介

主要用来扒取公司架构生成静态页面,经过几次更新现在已经可以下载网站里90%的内容,主要就是图片下载还有些问题。

具体功能

  1. 可以同时下载多个页面 (需自己配置)
  2. 分类保存 css,js,images 资源
  3. 自动替换a链接 (有文件的链接到下载好的文件,没有的为 'javascript:;')

存在的问题

  1. 只能下载本公司架构(写这个工具的本意就是扒公司架构)
  2. 还不能下载css文件中的背景图片(已解决)
  3. 由于架构中图片路径的不规范,导致现在下载img标签里的图片有时会报错(已解决)
  4. 所有的操作都需要修改 index.js文件,还没做界面
  5. 第一次写,估计性能已经代码结构方面还有很多问题
  6. 由于图片路径千奇百怪所以组合链接的时候做了太多的判断,而且有些图片还不好下载
  7. 由于是循环单个html页面,所以会重复下载里面的资源...
  8. 图片下载不完全会报如下错误
    Error: connect ETIMEDOUT 218.4.132.130:8000
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1113:14)
  • 先挖个坑,看作最后能填成什么样子

用到的技术

  1. 原生 js, (数组,正则,dom操纵)
  2. 原生 node.js 中的 fs (文件操作),path (路径操作)
  3. cheerio.js (可以向jQuery一样操作扒下来的数据)
  4. async.js (异步操作这里主要是用来,异步下载图片)
  5. request.js (http请求)
  6. 图片异步下载(网上找的)

下一步计划

  1. 进一步优化下载逻辑
  2. 是否能找到一种更好的下载方式

About

node.js 爬取网站内容

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published