【发布时间】:2018-01-23 13:43:50
【问题描述】:
我有一张如下所示的表格:
<table id="rounded-corner" class="sortable" style="width: 100%;">
<tbody>
<tr id="001" class="US">
<td>1
<td class="rare3">3★
<td sorttable_customkey="001"><a href="#001">
<div class="large" style="background-image:
url('icons/servant/servant_0011.png'),
</div></a>
<td sorttable_customkey="Mash Kyrielight">Name_of_character
</tr>
</tbody>
</table>
该表还有一百多行,每一行都由 tr id 定义。所以我想选择我需要的唯一 id 而不是选择整个表格,但我不知道如何将变量传递给cheerio 选择器。
我想做这样的事情:
request(url, function(error, response, html) {
if(!error && response.statusCode == 200) {
var $ = cheerio.load(html);
var fullTable = $('table[class="sortable"]');
var tableRow = $(fulltable).find('td[id="variable_goes_here"]');
然后我可以从我需要的 td 标签中抓取数据。
有没有办法在 find() 中放置一个变量,还是我需要将整个表解析为一个数组然后去查找 id?
谢谢!
【问题讨论】:
-
var tableRow = fulltable.find('#' + variable_goes_here); -
我设法做到了不同的方式,但这种方式也有效,谢谢!
标签: javascript node.js screen-scraping cheerio