【发布时间】:2013-11-29 15:55:39
【问题描述】:
Scrapy 用于解析 html 页面。我的问题是为什么有时scrapy会返回我想要的响应,但有时却不返回响应。是我的错吗?这是我的解析函数:
class AmazonSpider(BaseSpider):
name = "amazon"
allowed_domains = ["amazon.org"]
start_urls = [
"http://www.amazon.com/s?rh=n%3A283155%2Cp_n_feature_browse-bin%3A2656020011"
]
def parse(self, response):
sel = Selector(response)
sites = sel.xpath('//div[contains(@class, "result")]')
items = []
titles = {'titles': sites[0].xpath('//a[@class="title"]/text()').extract()}
for title in titles['titles']:
item = AmazonScrapyItem()
item['title'] = title
items.append(item)
return items
【问题讨论】:
-
您能否将未收到响应的运行日志消息包含在内?
-
你好。你有任何关于它的新信息吗?我有类似的问题stackoverflow.com/questions/20723371/…
-
我所做的是检查标题是否为空。如果韭菜是空的,请再次请求我从 respinse.url 获取的同一链接。相当愚蠢的解决方案,但它有效。
-
@Krasimir 您会考虑添加一个简短描述您选择的解决方案的回复吗?
标签: python request response scrapy sites