刮板按文本查找元素

时间:2018-07-01 12:21:35

标签: go goquery

例如,我有一张桌子

<table>
  <tr>
    <td>
      First
    </td>
    <td>
      1
    </td>
  </tr>
  <tr>
    <td>
      Second
    </td>
    <td>
      2
    </td>
  </tr>
</table>

如何按文本查找元素,例如“第二”,然后获取值“ 2”?

当然,我可以做类似的事情

doc, _ := goquery.NewDocumentFromReader(resp.Body)
caseSize := doc.Find("tr").Each(func(i int, element *goquery.Selection){
  // here I check each element by needed text
})

但是也许还有另一种更简单的方法,一些特定的发现者?

1 个答案:

答案 0 :(得分:0)

已解决

由于goQuery使用jQuery查找器,因此我以另一种方式更改了goQuery查找器

doc.Find("tr:contains('Second')").Find("td").First().Next().Text()