下面是我的啦啦队代码片段。我试图在<td>标记中获取项目的名称,并在随后的td标记(1,2,1)中获取数字。
itemName查询工作,但startPrice、endPrice和difPrice查询不起作用。我的逻辑中的缺陷在哪里,还是语法错误?
var $ = cheerio.load(html);
//
$('.table-item-link').each(function(i, element) {
var itemName = ($(this).attr('title');
console.log(itemName);
});
//Iterate through all tr inside div = 'content'
$('.content tr').each(function(i, element) {
var startPrice = $(this).children()[2].children()[0].text();
var endPrice = $(this).children()[3].children()[0].text();
var difPrice = $(this).children()[4].children()[0].text();
console.log(price)
});<div class='content'>
<table>
<thead>
<tr>Table Title</tr>
<tbody>
<tr>
<td>
<a href="http://services.runescape.com/m=itemdb_rs/Jangerberry_seed/viewitem?obj=5104" title="Jangerberry seed" class='table-item-link'>
<img src='http://services.runescape.com/m=itemdb_rs/5125_obj_sprite.gif?id=5104' alt="Jangerberry seed"><span>Jangerberry seed</span>
</a>
</td>
<td class='memberItem'><img src='http://www.runescape.com/img/rs3/grand_exchange/tick.png' title="Members Only" alt="Yes" /></td>
<td><a href="http://services.runescape.com/m=itemdb_rs/Oak_toy_box/viewitem?obj=9849">1</a></td>
<td><a href="http://services.runescape.com/m=itemdb_rs/Oak_toy_box/viewitem?obj=9849">2</a></td>
<td><a href="http://services.runescape.com/m=itemdb_rs/Oak_toy_box/viewitem?obj=9849">1</a></td>
<td class='change positive'><a href="http://services.runescape.com/m=itemdb_rs/Oak_toy_box/viewitem?obj=9849">+100%</a></td>
</tr>
<****repeat a bunch of tr w/ same format as above****>
<****close all other tags****************************>
发布于 2016-03-12 02:07:48
好吧,我看了你的代码。为什么不直接去
var arr = [];
$(".content tr a").each(function (i, elem) {
var a = $(elem);
var text = a.text().trim().toLowerCase();
arr.push(text);
});您还可以通过i值进行筛选,比如if i !== 2, i !== 3。
https://stackoverflow.com/questions/35952676
复制相似问题