node爬虫抓取图片(一层目录)

主要模块  

1.request  负责响应网络请求的request

2.cheerio 负责对抓取的数据进行处理


//依赖模块
var fs = require('fs');
var request = require("request");
var cheerio = require("cheerio");
var mkdirp = require('mkdirp');

//目标网址
var url = 'http://jandan.net/ooxx/page-24';

//本地存储目录
var dir = './imggg';

//创建目录
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').each(function() {
var src ='http:' +$(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));
});
};


node jsname 

与本文有关的文章

express/ multer 上传图片文件 pm2 启动node以及linux 环境变量配置 nginx设置多个node项目 nginx静态资源与node冲突解决方案 nodejs/pm2基本操作 node爬虫抓取图片(一层目录) cookie,session,nodejs log4js-node日记模块 百度分享报错url不合法!!原创!! npm的常用命令。 nginx反向代理,node获取真实IP nodejs fs删文件 multer对单个上传的文件做限制处理。 nodejs发送邮件实例 qq email nodejs模块之FS File System(文件系统) DEMO演示 nodejs express允许跨域访问设置 用nodejs批量获取qq群成员信息 nodejs request模块实例以及爬虫 nodejs express 模块公共代码部分提取 express cookie清除无效?? Node中require和import 转:【全文】狼叔:如何正确的学习Node.js 分享一些有用的工具网站 Nodejs接收图片base64格式保存为文件再返回图片url地址 &#x(unicode编码后的汉字)JS转译方法-nodejs爬虫转译乱码 linux centos 7.4安装nodejs与nginx mongodb Nodejs全局模块安装了却显示命令不存在? nodejs服务器文件直传阿里云oss nodejs ejs模块try catch的坑 nodejs fs模块常用API 读取目录,重命名等等 nodejs实现百度post推送 nodejs爬虫记录 nodejs 分词模块推荐-nodejieba npm 模块安装机制简介 nodejs流式传输请求时如何处理错误 在pipe前添加on error | Error: getaddrinfo EAI_AGAIN www.xxx.com | connect timedout 百度翻译API nodejs版本 nodejs 图片加水印 images模块 nodejs gm图片操作模块笔记 npm cheerio模块移除元素上不必要的属性 - nodejs nodejs 模块推荐 html-minifier (html压缩)压缩模块 nodejs 定时任务模块(node-schedule) nodejs模块之 cheerio 中文乱码 jq.fileupload上传文件 服务的nodejs接收 demo nodejs express - PayloadTooLargeError: request entity too large ? nodejs使用gmail批量发送email nodejs request乱码 nodejs下载远程文件 nodejs下载远程文件 简要DEMO nodejs 移动文件位置 nodejs 递归删除方法
回到顶部