当链接没有类时,使用Xpath获取Python中链接的锚文本

时间:2017-02-11 02:11:28

标签: python xpath lxml

(免责声明:我只是模糊地知道python和我对编码很新)

我正在尝试将文本作为link的一部分,但它没有特定的类,并且取决于我如何说出我的代码,我得到了太多的东西(xpath isn'特定的)或空白[]。

我正在尝试访问的屏幕截图是:

enter image description here

树是页面中的所有html。 返回空白的代码是:

cardInfo=tree.xpath('div[@class="cardDetails"]/table/tbody/tr/td[2]/a/text()')

返回太多的代码:

cardInfo=tree.xpath('a[contains(@href, 'domain_name')]/text()')

我尝试进入Inspect in chrome并复制xpath,这也没有给我什么。我已经成功地从页面中获取了纯文本而非链接的其他内容。非常抱歉,如果我没有解释得这么好,但是有没有人知道我能写什么?

1 个答案:

答案 0 :(得分:2)

如果您想查找Set Name:旁边的文字:

>>> import lxml.html
>>> tree = lxml.html.parse('http://shop.tcgplayer.com/pokemon/jungle/nidoqueen-7')
>>> tree.xpath(".//b[text()='Set Name:']/parent::td/following-sibling::td/a/text()")
['Jungle']
  • .//b[text()='Set Name:']使用b文字
  • 查找Set Name:代码
  • parent::td - 它的父td元素,
  • following-sibling::td - 关注td元素