我正在编写一个Web Scrawler来检索网站上的信息,我的代码如下所示
var request=require("request");
var cheerio=require("cheerio");
var url="http://www.cwb.gov.tw/V7e/forecast/taiwan/Taipei_City.htm";
request(url,function(err,res,body){
if(err){
console.log("Error happened!"+err);
}
else{
console.log("Status Code "+res.statusCode);
var $=cheerio.load(body);
let cities = []
$('.CenterMenu option').each(function(i, elem) {
cities.push($(this).text().split('\n')[0]);
})
url="http://www.cwb.gov.tw/V7e/forecast/taiwan/inc/city/"+cities[0]+".htm";
}
});
我想要的是我可以打印像Changhua_City这样的城市字符串,但是,我打印的城市总是像彰化市,想知道有什么可以修复这条线cities.push($(this).text().split('\n')[0]);
让我的城市阵列看起来像Changua_City
答案 0 :(得分:0)
试试这个:
const city = $(this).text().split('\n')[0];
city.replace(/(\ (.{1}))/, (m, s1, s2) => `_${s2.toUpperCase()}`);
cities.push($(this).text().split('\n')[0]