添加一些说明: 爬虫是由scrapy + redis + mongodb编写的。大约有70个列表页面,每个列表页面都有10个url到详细页面,因此,正确的总页面大约是70 * 10 = 700,但是当页面是大约400,爬虫不能再获取任何页面,信息是:
2015-10-14 22:28:13 [scrapy] INFO: Crawled 1192 pages (at 76 pages/min), scraped 443 items (at 35 items/min)
2015-10-14 22:29:13 [scrapy] INFO: Crawled 1192 pages (at 0 pages/min), scraped 443 items (at 0 items/min)
“已抓取1192页”:有一些ajax请求和列表页面请求,因此页面超过700。 并且我发现导致爬虫停止的原因是有一些网址没有响应。用浏览器打开网址,有注意,是空白,不是404.and,这些页面没有响应,我想忽略它们,继续抓住下一页。
@Shekhar Samanta说: “使用: -try:
your line to make http requests
except:
pass
借助此功能,您的抓取工具不会中断。“ 所以,这是关于此爬虫的http请求的代码,我不知道如何在我的代码中添加“try except”:
def parse(self,response):
url_list = response.xpath('//div[@class="title"]/a/@href')
for url in url_list:
fullurl=response.urljoin(url.extract())
yield Request(fullurl, callback=self.parseContent)
def parseContent(self, response):
for sel in response.xpath('//div[@class="content"]'):
item = ArticlespiderItem()
item['articleUrl']=response.url
item['aticleTitle']=sel.xpath('div[1]/div[1]/h3/text()').extract()
yield item
答案 0 :(得分:1)
使用: -
grails:
web:
servlet:
path: /*
借助此功能,您的抓取工具不会中断。