注:本文只討論技術(shù)不涉及商業(yè),如有侵權(quán)請(qǐng)告知,未經(jīng)本人同意轉(zhuǎn)載后果自負(fù)!
尼瀘西網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián)建站,尼瀘西網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為尼瀘西上1000+提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)網(wǎng)站制作要多少錢,請(qǐng)找那個(gè)售后服務(wù)好的尼瀘西做網(wǎng)站的公司定做!
本文是通過瀏覽器端ajax,node端request-json進(jìn)行爬取”尤果網(wǎng)“部分圖片資源,純屬技術(shù)方面興趣,不涉及商業(yè)方面;
先上圖:
如果沒有node基礎(chǔ)請(qǐng)自行學(xué)習(xí)~
獲取圖片原理:通過request請(qǐng)求html文件,利用正則匹配圖片路徑獲取到當(dāng)前頁(yè)面圖片的數(shù)組,發(fā)送到瀏覽器端,進(jìn)行展示;
1.安裝request-json (cnpm i request-json --save)
2.安裝express(cnpm i express --save)
3.新建一個(gè)app.js文件,作為server文件,代碼如下
const express = require("express"); const morgan = require('morgan'); const ejs = require('ejs'); const path = require('path'); const bodyParser = require('body-parser'); const app = express(); //logs info to server app.use(morgan('dev')); //post resolve app.use(bodyParser.json()); app.use(bodyParser.urlencoded({ extended: false })); // view engine setup app.engine('html', ejs.__express); app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'html'); //設(shè)置靜態(tài)文件如:圖片, CSS, JavaScript 等。 app.use(bodyParser.json()); app.use(bodyParser.urlencoded({ extended: false })); app.use(express.static(path.join(__dirname, 'public'))); /* * reuire pages */ var index = require('./routes/index') /* * render pages */ app.use('/', index); // catch 404 and forward to error handler app.use(function(req, res, next) { var err = new Error('Not Found'); err.status = 404; next(err); }); // error handler app.use(function(err, req, res, next) { // set locals, only providing error in development res.locals.message = err.message; res.locals.error = req.app.get('env') === 'development' ? err : {}; // render the error page res.status(err.status || 500); res.render('error', { "title": '404', "msg": '服務(wù)異常' }); }); module.exports = app; app.listen(3000,function(){ console.log('http://127.0.0.1:3000') });
此時(shí)服務(wù)運(yùn)行在3000端口;
4.請(qǐng)求html頁(yè)面:
router.all("/getUGirls",function(req,res,next){
正則部分代碼(……)
client.get(url,function(err, response, body) { if((typeof body)!="string"){ body = JSON.stringify(body); } arr =body.match(reg); console.log(arr); //這里就是當(dāng)前頁(yè)面的路徑以及頁(yè)面上圖片列表的數(shù)組,通過res.json發(fā)送到client; res.json({"url":url,"records":arr}); }); })
該方法適用于頁(yè)面url有規(guī)則,并且頁(yè)面中圖片路徑有規(guī)則的任何網(wǎng)站的圖片爬??;
再次聲明,不要隨便那人家網(wǎng)站上的圖片隨便使用,學(xué)學(xué)技術(shù)就好,況且這個(gè)方法沒什么技術(shù)含量,源碼就不放了;
不說(shuō)了,看圖去了
以上這篇ajax+node+request爬取網(wǎng)絡(luò)圖片的實(shí)例(宅男福利)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持創(chuàng)新互聯(lián)。
當(dāng)前名稱:ajax+node+request爬取網(wǎng)絡(luò)圖片的實(shí)例(宅男福利)
標(biāo)題來(lái)源:http://muchs.cn/article18/pipegp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、網(wǎng)站改版、小程序開發(fā)、定制網(wǎng)站、域名注冊(cè)、ChatGPT
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)