【发布时间】:2016-06-15 19:10:30
【问题描述】:
我正在抓取以下页面:http://www.worldfootball.net/all_matches/eng-premier-league-2015-2016/
第一个解析通过,应该得到所有带有分数的链接作为文本。我首先遍历所有匹配行:
for sel in response.xpath('(//table[@class="standard_tabelle"])[1]/tr'):
然后获取表格第6列的链接
matchHref = sel.xpath('.//td[6]/a/@href').extract()
然而,这不会返回任何内容。我在 Chrome 中尝试了相同的选择器(在 table 和 tr 选择器之间添加了“tbody”),但我得到了结果。但是,如果我在 scrapy shell 中尝试相同的选择器(没有 tbody),我只能从第一个 response.xpath 中获得结果,而以下链接提取则没有。
我以前做过一些这样的循环,但这个简单的事情让我难住了。有没有更好的方法来调试这个?这是一些 shell 输出,我只是尝试简化我的第二个选择,只选择任何 td
In [36]: for sel in response.xpath('(//table[@class="standard_tabelle"])[1]/tr'):
....: sel.xpath('.//td')
....:
什么都没有。想法?
【问题讨论】:
标签: python xpath scrapy scrapy-spider