Xpath是正确的,但Scrapy不起作用

时间:2018-07-17 11:00:56

标签: python xpath web-scraping scrapy spyder

我正在尝试从网页上下载两个字段,我为每个字段标识了XPath表达式,然后运行Spider,但没有下载任何内容。

网页: http://www.morningstar.es/es/funds/snapshot/snapshot.aspx?id=F0GBR04MZH

我要逐项列出的字段是ISIN

Spider可以正常运行,但是输出为空。

这是行代码:

item['ISIN'] = response.xpath('//*[@id="overviewQuickstatsDiv"]/table/tbody/tr[5]/td[3]/text()').extract()

2 个答案:

答案 0 :(得分:3)

尝试从XPath删除tbody

'//*[@id="overviewQuickstatsDiv"]/table//tr[5]/td[3]/text()'

请注意,此标记是在页面呈现时由您的浏览器添加的,并且在页面源中不存在

P.S。我建议您使用IMHO甚至更好的XPath:

'//td[.="ISIN"]/following-sibling::td[contains(@class, "text")]/text()'

答案 1 :(得分:0)

我认为没有给出response.selector。尝试这个。

response.selector.xpath('//*[@id="overviewQuickstatsDiv"]/table/tbody/tr[5]/td[3]/text()').extract()