nodejs爬虫爬取网站图片,并下载到本地!
七娃博客756人阅读
nodejs可以做爬虫吗?nodejs如何网页中的图片?nodejs做爬虫爬取图片。今天发现了一篇博客《node.js爬虫:爬取网页图片》,就跟着敲了起来,顺便找个了壁纸网站:https://pic.netbian.com/(若有冒犯,见谅!并没有爬你真实图片数据),测试了一下确实可以。
爬取步骤
1.安装引入依赖 - 自行node安装依赖
const request = require("request"); // 引入依赖 const fs = require("fs"); const path = require("path"); const cheerio = require("cheerio");
2.封装源地址和保存位置
const url = 'https://pic.netbian.com/'; //请求地址 const imgDir = path.join(__dirname,'./imgs/'); // 保存地址
3.请求源地址,并获取图片,写规则
function getImg(){ request(url,function(err,res,body){ // 请求 console.log('请求'); if(!err && res){ let $ = cheerio.load(body); // 图片规则 — 和jquery 很像 $('.slist img').each(function(i,ele){ let imgSrc = url + $(this).attr('src'); downLoad(imgSrc,i); }) } }) }
4.下载图片到本地
function downLoad(imgUrl,i){ // 下载到本地 let ext = imgUrl.split('.').pop(); request(imgUrl).pipe(fs.createWriteStream(path.join(imgDir,i+'.'+ext),{ 'encoding':'utf8' })) console.log(i); }
5.执行一下请求图片的方法
getImg();
6.运行index.js文件
node index.js
评论 | 0 条评论
登录之后才可留言,前往登录