av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

javascript - nodejs中使用request庫怎么抓取網頁中的圖片

瀏覽:88日期:2023-09-01 13:23:31

問題描述

const koa = require(’koa’);const request = require(’request’);const fs = require(’fs’);const path = require(’path’);function requestAsync(url) { return new Promise((resolve, reject) => {request({ url: url}, (err, res, body) => { if (err) {reject(err); } else {resolve(body); }}) });}function writeFileAsync(path, data, option) { return new Promise((resolve, reject) => {fs.writeFile(path, data, option, (err)=> { if (err) {reject(err); } else {resolve(); }}) });}const app = new koa();app.use(async (ctx) => { let url = ’http://pubimage.360doc.com/index7/bannerl_1.jpg’; let filepath = path.join(__dirname, ’./images/詳情’); filepath = filepath + ’/1.jpg’; // request(url).pipe(fs.createWriteStream(filepath));這個可以正常抓取圖片 let data = await requestAsync(url); let buffer = Buffer.from(data); await writeFileAsync(filepath, buffer); ctx.type = ’jpg’; ctx.body = buffer;})app.listen(3000);console.log(`starting at ${3000}`);

我把request 和 writefile 都寫成了promise的形式,抓取html是可以的,抓取圖片就不行了

一開始data 輸出是string類型,也就是request 的body是string類型,我就使用Buffer.from

轉為buffer類型,也是不行,改為Buffer.from(data, ’base64’)也是不行,但就是使用 request(url).pipe(fs.createWriteStream(filepath))就可以請問一下哪里出錯了

問題解答

回答1:

/q/10...

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 国产一级成人 | 国产成人网 | 伊人久久大香线 | 国产极品91| 男人的天堂一级片 | 成人免费精品视频 | 国产精品久久久久久中文字 | 成人午夜免费视频 | 亚洲综合色网 | 日韩有码一区 | 久久久激情 | 国产精品一区一区 | 亚洲激情在线观看 | 国产激情一区二区三区 | 亚洲美女一区 | 精品一区二区三区入口 | 中文字幕在线视频网站 | 久久激情网 | 欧区一欧区二欧区三免费 | 999视频在线播放 | 日韩精品中文字幕一区二区三区 | 久久精品在线免费视频 | 激情在线视频 | 精精久久 | 精品视频一区二区在线观看 | 我要看黄色录像一级片 | 日韩国产高清在线观看 | 久草在线 | 国产不卡在线观看 | 美女人人操 | 天堂在线1 | 日韩视频在线免费观看 | 中文字幕欧美一区 | 一区二区三区成人 | 精品视频一区二区三区在线观看 | 国产成人精品一区二区三区在线 | 爱爱免费视频 | 久久亚洲一区二区三区四区 | 美女在线国产 | 在线观看中文字幕av | 国产乱码精品1区2区3区 |