我正在尝试使用带有cheerio和request的nodejs来搜索包含大文件夹的网站,该网站位于网址http://my.aup.edu/files/pictures/picture-35933.jpg处。从页面中提取一个图像看起来像这样
var request = require("request"),
cheerio = require("cheerio"),
urls = [];
request('', function(err, resp, body){
if (!err && resp.statusCode == 200 ) {
var $ = cheerio.load(body);
$('body.img').each(function(){
var url = $(this).attr("src");
urls.push(url);
});
console.log(urls)
}
});
此程序完成将URL记录到控制台,但不会保存图片。然而,网站上的文件扩展名有点奇怪,因为即使链接是http://my.aup.edu/files/pictures/picture-35933.jpg,并非所有扩展名1-99999都有图像..有些只是重定向到不同的页面。我可以在url的末尾使用带有math.random()的if语句来检查它是否包含img然后下载它。如果可能,请告诉我。谢谢!
答案 0 :(得分:0)
如果您执行http HEAD请求而不是http GET,那么您可以查看内容类型并(希望)找出您是否有图像。