- 系统:windows、Mac、linux 适用
- 运行环境:node
安装nodejs
# npm install request
# npm install cheerio
示例代码:
/*
* 爬取城市PM2.5
*/
const fs = require('fs');
const request = require('request');
const path = require('path');
const cheerio = require('cheerio');
function getPM25(cityname) {
const url = 'http://www.pm25.com/'+ cityname+'.html'
request.head(url, function (err, res, body) {
if(err){
console.log(err);
}else{
request(url,function (error,response,data) {
if(!error && response.statusCode == 200){
const $ = cheerio.load(data);
let city = $('.bi_loaction_city'); // 城市名称
let aqi = $('.bi_aqiarea_top .bi_aqiarea_num'); // AQI指数
let quality = $('.bi_aqiarea_right span') // 空气质量
let result = $('div .bi_aqiarea_bottom') // 空气质量描述
console.log(city.text() + 'AQI指数:'+ aqi.text() + ';空气质量:' + quality.eq(0).text() + result.text())
}
});
}
});
}
getPM25('wuhan')
request请求url链接,适用cheerio将获取的data中的DOM节点。
request.head 验证url地址的正确性。
使用cheerio获取节点数据,需要满足的条件是html为后端渲染生成,元素节点存在html文件中。
网友评论