爬虫功能:抓取https://movie.douban.com/chart页面中的数据,求最高分、最低分、平均分。
const fs = require("fs");
const axios = require("axios");
const cheerio = require("cheerio");
axios.get("https://movie.douban.com/chart").then(res=>{
//console.log(res.data)
//fs.writeFileSync("1.html", res.data);
var $ = cheerio.load(res.data); // 把数据结构化
var data = [];
var all = 0;
var min;
var minIndex;
var max;
var maxIndex;
$(".pl2").each(function( ind, el){
var elem = $(el);
var title = elem.children("a").text().split("/")[0].replace(/\n/g, '').replace(/\s/g, '');
var score = Number(elem.find(".rating_nums").text());
if( min === undefined ){
min = score;
}
if( max === undefined ){
max = score;
}
if( score<min ){
min = score;
minIndex = ind;
}
if( score>max ){
max = score;
maxIndex = ind;
}
data.push({
title,
score
})
all+=Number(score); // 总分数
})
var pjf = all / data.length; // 平均分
console.log('总分:'+all.toString());
console.log('平均分:'+pjf.toString());
console.log('最低分:'+min+' 下标:'+minIndex+' '+data[minIndex].title);
console.log('最高分:'+max+' 下标:'+maxIndex+' '+data[maxIndex].title);
})
版权声明:本文为qq_37662737原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。