利用Node.js批量抓取高清妹子图片实例好代码教程

没流泪,不代表没眼泪;无所谓,不代表无所累。这个世界本就邋遢,所以没有什么可怕。每个人都有无法发泄的苦涩,都有无力排解的抑郁,而生活在那里的我们,哪一个不是拼尽全力,甚至不择手段地活着。

前言

写了一个抓取图片的小玩意,分享一下。

Github地址:https://github.com/focalhot/node.js-crawler(本地下载)

示例代码

 //依赖模块
 var fs = require('fs');
 var request = require("request");
 var cheerio = require("cheerio");
 var mkdirp = require('mkdirp');
 
 //目标网址
 var url = 'http://me2-sex.lofter.com/tag/美女摄影?page=';
 
 //本地存储目录
 var dir = './images';
 
 //创建目录
 mkdirp(dir, function(err) {
 if(err){
 console.log(err);
 }
 });
 
 //发送请求
 request(url, function(error, response, body) {
 if(!error && response.statusCode == 200) {
 var $ = cheerio.load(body);
 $('.img img').each(function() {
 var src = $(this).attr('src');
 console.log('正在下载' + src);
 download(src, dir, Math.floor(Math.random()*100000) + src.substr(-4,4));
 console.log('下载完成');
 });
 }
 });
 
 //下载方法
 var download = function(url, dir, filename){
 request.head(url, function(err, res, body){
 request(url).pipe(fs.createWriteStream(dir + "/" + filename));
 });
 };

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对的支持。

您可能有感兴趣的文章
Ajax 配合node js multer 实现文件上传功能

nodejs二进制与Buffer的介绍与使用

nodejs中各种加密算法的实现详解

独立部署小程序基于nodejs的服务器过程详解

node中实现删除目录的几种方法