2
我使用的urllib2和beautifulsoup構建一個簡單的搜尋應用程序,現在我打算把它變成scrapy蜘蛛,但我怎麼能處理的錯誤,同時運行履帶, 我當前的應用程序有一些這樣的代碼,如何在scrapy蜘蛛中添加try exception?
error_file = open('errors.txt','a')
finish_file = open('finishlink.txt','a')
try:
#Code for process each links
#if sucessfully finished link store into 'finish.txt' file
except Exception as e:
#link write into 'errors.txt' file with error code
因此,當我處理成千上萬的鏈接時,成功處理的鏈接將存儲到finish.txt中,並且錯誤將位於errors.txt中,因此我可以稍後在錯誤中運行鏈接,直至成功處理。 所以,我怎麼能在這些代碼完成這些,
class DmozSpider(scrapy.Spider):
name = "dmoz"
allowed_domains = ["dmoz.org"]
start_urls = [
"http://www.dmoz.org/Computers/Programming/Languages/Python/Books/",
"http://www.dmoz.org/Computers/Programming/Languages/Python/Resources/"
]
def parse(self, response):
filename = response.url.split("/")[-2]
with open('filename+'.txt', 'wb') as f:
f.write(response.body)
在哪個文件我可以添加此功能'process_spider_exception()','中或spider.py'任何其他文件。如果你用一些代碼解釋更多,它會非常有幫助,因爲我從昨天開始就開始scrapy,並且在互聯網上找不到任何其他示例... – Jake 2014-10-29 19:45:52
@Jake好吧,我添加了一個完整的示例 - 這應該會讓你去。 =) – elias 2014-10-29 22:49:51
這是非常有益的,謝謝你的時間..... – Jake 2014-10-30 10:33:27