Scrapy:在嵌套在数据单元格中的结束标记之后抓取信息

时间:2018-01-30 13:59:46

标签: python html scrapy

我想抓住一个特定的链接。我的问题是,在没有特定标签的单元格中识别该链接。例如:

<td class="tableText" style="padding-left: 10px;">
      <a href="/link">John</a>;&nbsp; 
      <a href="/link">Jacob</a>;&nbsp;  (Primary) <br/>
      <a href="/link">Jingle</a>;&nbsp; 
      <a href="/link">Bud</a>;&nbsp; 
</td>

基本上,我只想刮掉标有“雅各布”的链接,通过其后面的文字(“主要”)识别。在这种情况下,到目前为止,我的代码如下所示:

item['stuff'] = response.xpath('//div[@id = "mainBody"]/table/tr/td/a/text()').extract()

在这种情况下,我希望scrapy获得** [2] **。

1 个答案:

答案 0 :(得分:1)

您可以使用following-sibling轴进行此操作:

>>> sel.xpath('//a[contains(following-sibling::text(), "Primary")]')
[<Selector xpath='//a[contains(following-sibling::text(), "Primary")]' data='<a href="/link">Jacob</a>'>]