あなたはこれらの二つのモジュールを必要とし、あなたがdynamicaly URLを取得し、名前と写真をダウンロードすることができ
このrequest-promise, cheerio,
var app = require('express')();
var http = require('http').Server(app);
fs = require('fs');
var fs = require('fs'),
request = require('request');
//save image
var download = function(uri, filename, callback){
request.head(uri, function(err, res, body){
request(uri).pipe(fs.createWriteStream(filename)).on('close', callback);
});
};
//get URL
var Imgpath="";
var rp = require('request-promise'),
cheerio = require('cheerio'),
url = require('url'),
base = 'http://random.dog/';
var options = {
uri: base,
method: 'GET',
resolveWithFullResponse: true
};
rp(options)
.then (function (response) {
$ = cheerio.load(response.body);
var relativeLinks = $("img");
relativeLinks.each(function() {
var link = $(this).attr('src');
var fullImagePath = url.resolve(base, link); // should be absolute
//pass to download to download image link is file name and base is base url
download(base+link,link,function()
{
console.log("wao great we done this...THINK DIFFERENT")
})
});
});
app.listen(3000);
console.log("server start");
app.get('/',function(req,res){
res.sendfile(__dirname + '/a.html');
});
あなたは[jsdom](HTTPSのようなDOMパーサを使用することができます。 //www.npmjs.com/package/jsdom)を使用して、ページ上のHTMLを解析し、イメージURLを特定します。 – brandonscript
検索キーワードは「web scraper」です。 – OrangeDog
私はちょうどこの場合、ここに残しておきます:[正規表現でhtmlを解析する](:http://stackoverflow.com/a/1732454/3861083):-) –