在 http://www.cnblogs.com/xiandedanteng/p/7614051.html 一文我曾经书写过一个图片下载爬虫,但原有程序不是为下载图片而设计故有些绕,于是稍微改写了一下,可读性应该稍好些。功能上和原程序差不多,只是输出目录不是固定在test目录了。代码如下:

//================================================
// https://www.meitulu.com图片批量下载Node.js爬虫1.01
// 2017年11月5日
//================================================// 内置http模块,提供了http服务器和客户端功能
var http=require("http");// cheerio模块,提供了类似jQuery的功能
var cheerio = require("cheerio");// 内置文件处理模块
var fs=require('fs');// 请求参数JSON
var options;// request请求
var req;//--------------------------------------
// 程序入口
//--------------------------------------
function start(){var folder="38";fs.mkdir('./'+folder,function(err){if(err){console.log("创建目录"+folder+"失败");}});var startIndex=1;var endIndex=104;for(var i=startIndex;i<=endIndex;i++){downloadPic(folder,i);}
}//--------------------------------------
// 下载图片
// folder:图片所在url的目录
// pinctureIndex:图片序号
//--------------------------------------
function downloadPic(folder,pinctureIndex){console.log("开始下载"+pinctureIndex);// 初始化optionsoptions={hostname:'mtl.ttsqgs.com',// 这里别加http://,否则会出现ENOTFOUND错误port:80,path:'/images/img/'+folder+'/'+pinctureIndex+'.jpg',// 子路径method:'GET',};req=http.request(options,function(resp){var imgData = "";resp.setEncoding("binary"); resp.on('data',function(chunk){imgData+=chunk;            });resp.on('end',function(){var fileName="./"+folder+"/"+pinctureIndex+".jpg";fs.writeFile(fileName, imgData, "binary", function(err){if(err){console.log("文件"+fileName+"下载失败.");}console.log(fileName+"下载成功");});    });});// 超时处理req.setTimeout(5000,function(){req.abort();});// 出错处理req.on('error',function(err){if(err.code=="ECONNRESET"){console.log('socket端口连接超时。');}else{console.log('请求发生错误,err.code:'+err.code);}});// 请求结束
    req.end();
}// 调用start函数,程序开始
start();

Node.js meitulu图片批量下载爬虫1.01版相关推荐

  1. Node.js meitulu图片批量下载爬虫1.051

    原有1.05版程序没有断点续传模式,现在在最近程序基础上改写一版1.051. //====================================================== // m ...

  2. Node.js monly图片批量下载爬虫1.00

    此爬虫又用到了iconv转码,代码如下: //====================================================== // mmonly图片批量下载爬虫1.00 ...

  3. Node.js mimimn图片批量下载爬虫 1.00

    这个爬虫在Referer设置上和其它爬虫相比有特殊性.代码: //====================================================== // mimimn图片批 ...

  4. 【pyhon】nvshens图片批量下载爬虫1.01

    # nvshens图片批量下载爬虫1.01 # 原先版本在遇到网络故障时回下载不全,这回更改了模式使得下载不成就重新下载,直到全部下载完毕 from bs4 import BeautifulSoup ...

  5. Node.js aitaotu图片批量下载Node.js爬虫1.00版

    即使是https网页,解析的方式也不是一致的,需要多试试. 代码: //====================================================== // aitaot ...

  6. Node.js umei图片批量下载Node.js爬虫1.00

    这个爬虫在abaike爬虫的基础上改改图片路径和下一页路径就出来了,代码如下: //====================================================== // ...

  7. 【Chrome】图片批量下载扩展zzllrr Imager小乐图客V1.4 (支持正则表达式、自定义JS代码、自定义引擎、多网站取图规则)...

    小乐图客 - Chrome浏览器图片批量下载工具,升级至V1.4 该版本实现的功能: 1.右下角集成众多网站引擎(相似图片搜索.图片搜索.网页搜索.图片上传等等). 2.选项中增加各类设置的重置.导入 ...

  8. 【pyhon】怨灵侍全本漫画批量下载爬虫1.00

    代码: # 怨灵侍全本漫画批量下载爬虫1.00 # 拜CARTOON.fydupiwu.com整理有序所赐,寻找图片只要观察出规律即可,不用费劲下一页的找了 import time import ur ...

  9. Node.js脚本项目合集(一):Node.js+FFmpeg实现批量从B站导出离线缓存视频到mp4格式,mp4转mp3,实现听歌自由

    Node.js脚本项目合集(一):Node.js+FFmpeg实现批量从B站导出离线缓存视频到mp4格式,mp4转mp3,实现听歌自由 前言 一.准备工作以及介绍 1.什么是FFmpeg 2.FFmp ...

  10. 自己动手写工具:百度图片批量下载器

    开篇:在某些场景下,我们想要对百度图片搜出来的东东进行保存,但是一个一个得下载保存不仅耗时而且费劲,有木有一种方法能够简化我们的工作量呢,让我们在离线模式下也能爽爽地浏览大量的美图呢?于是,我们想到了 ...

最新文章

  1. Windows中打开方式...无法指定程序的解决办法
  2. sonarqube安装
  3. 鸟哥的Linux私房菜(基础篇)-第三章、主机规划与磁盘分区(三.1. Linux与硬件的搭配)
  4. Lamp安装与实现动态网页案例(一)
  5. ssm上传文件获取路径_SSM实现图片上传下载功能
  6. 分类预测回归预测_我们应该如何汇总分类预测?
  7. 递归方程组解的渐进阶的求法——代入法
  8. 【Git】GitHub主页从Dark调回Light的方法
  9. LeetCode--35. 搜索插入位置(遍历,二分法)
  10. pytorch教程:save and load
  11. Log4j2发新版本2.16.0,加固漏洞防御,不想被攻击,就赶快更新啦!
  12. 研发效能提升的八项实践建议
  13. 关于spring集成junit4测试步骤
  14. 如何在MyEclipse 中将工程已经删除的文件恢复过来
  15. 挑战程序设计竞赛是c语言编写的嘛,POJ 2115 C Looooops 题解《挑战程序设计竞赛》...
  16. VMware网络桥接设置
  17. 前端知识点——Web Sockets
  18. 计算机教学提问的观课量表,观课议课|如何使用观察和记录量表
  19. WEB常用HTML颜色代码表
  20. 原生js以及jQuery删除节点

热门文章

  1. 2009年英国大学综合排名
  2. n2n(Pear-to-pear) 内网穿透
  3. 最全CAD快捷键命令大全(图文版、文字版、键盘版)
  4. html导航栏位置垂直居中,导航栏水平+垂直居中
  5. opencontrail 2.20
  6. C#向一个Word文件中插入文字与图片
  7. GIT原理,知其然,知其所以然
  8. 计算机可移动磁盘无法显示图片,电脑显示可移动磁盘但打不开
  9. 紫猫插件-网络共享数据(1-6)
  10. c语言计算定积分有几种方法,C语言用6种方法求定积分.doc