【发布时间】:2014-02-19 20:55:21
【问题描述】:
过去几个小时我一直在研究这个问题,但无法弄清楚我做错了什么。当我使用 scrapy shell 中的选择器运行我的 xpath 状态时,该语句按预期工作。然而,当我尝试在我的蜘蛛中使用相同的语句时,我得到一个空集。有谁知道我做错了什么?
from scrapy.spider import Spider
from scrapy.selector import Selector
from TFFRS.items import Result
class AthleteSpider(Spider):
name = "athspider"
allowed_domains = ["www.tffrs.org"]
start_urls = ["http://www.tffrs.org/athletes/3237431/",]
def parse(self, response):
sel = Selector(response)
results = sel.xpath("//table[@id='results_data']/tr")
items = []
for r in results:
item = Result()
item['event'] = r.xpath("td[@class='event']").extract()
items.append(item)
return items
【问题讨论】:
-
没有任何 HTML,很难说。您指定的 URL 几乎只包含 javascript,并且没有带有您要查找的 id 的标签。你是如何用 HTML 填充你的 scrapy shell 的?
-
你确定这个 start_url 吗?它说域名正在出售
-
我刚刚检查过了,是的,这只是广告。那里根本没有“results_data”。
标签: xpath web-crawler scrapy