我想抓一个网站,我不知道如何获得我想要的选择器。 我正在使用这个功能:
function scrapeData(urls) {
var data = [];
var urlPromises = urls.map(function(url) {
return request(url).spread(function(response, html){
if (response.statusCode == 200) {
var $ = cheerio.load(html);
var elements = $('.IframePrincipal').toArray();
// Items to scrape
return elements.map(function(el, index){
var title = $(el).find('h2').text().replace(/^\s+|\s+$/g, "");
var stock = $('#FormASP > table:nth-child(4) > tbody > tr > td > table > tbody > tr:nth-child(2) > td.IframePrincipal > table > tbody > tr > td > table > tbody > tr > td:nth-child(2) > table > tbody > tr:nth-child(3) > td > table > tbody > tr > td').html();
var price = parseFloat($(el).find('td:nth-child(1)').text().replace(/\€|,/g, '.'));
// Push items into data array
return {Title: title, Stock: stock, Price: price, date: date};
});
}
else {
return [];
}
}, function(error){
console.log("Error");
return [];
});
});
return Promise.all(urlPromises).then(flatten);
}
Var标题就像一个魅力。 Var Stock没有,它只是我的copypasted的css路径,以及来自以前的网站的var价格,无论如何我不知道热得到它。我只是“无效”。
这是一个url to scrape的例子: Site to scrape
答案 0 :(得分:0)
好的,我正在寻找检查员路径而不是真正的代码。