这是我的HTML代码:
这是我的代码:
我希望能获取到
还有其他结构,例如:
上述代码将会得到以下结果:
所以HTML代码如下:
这是段落
<tbody><tr><th>SHOES</th></tr>
<tr>
<td>
Shoe 1 <br>shoe 2<br> shoe3 <br>
</td>
</tr>
</tbody>
这是我的代码:
nodes = page.css("tr").select do |el|
el.css('th').text =~ /SHOES/
end
nodes.each do |value|
puts value.css("td").text
end
我希望能获取到
鞋1
、鞋2
和鞋3
的值,但没有输出。我怀疑在<tr><th>鞋</th></tr>
之间有一个额外的<tr></tr>
。或者是<br>
造成了问题?还有其他结构,例如:
<tr>
<th>SHOES</th>
<td>NBA</td>
</tr>
我得到了期望的输出结果"NBA"
。
我做错了什么?
我有两种结构:
Name1: value
Name1: value2
上述代码将会得到以下结果:
<tr>
<th>Name1</th>
<td>Value</td>
</tr>
但有时它是:
Name:
value
value2
value3
所以HTML代码如下:
<tbody><tr><th>Name</th></tr>
<tr>
<td>value<br>value2<br> ....</td>
tr
中没有th
。el.css('th').text =~ /SHOES/
选择只有th
标签和文本模式SHOES
的tr
。 - Arup Rakshitnodes = page.css("th").select do |el|
吗?那么我该如何获取th
值SHOES
呢? - dorothyth
? - Arup Rakshitnodes = page.css("th").select do |el|
而不是nodes = page.css("tr").select do |el|
应该没问题吧? - dorothy