色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

基于python的scrapy爬蟲

阮建安2年前14瀏覽0評論

基于python的scrapy爬蟲?

對于只是讀取某幾個網站更新內容的爬蟲完全沒必要在python代碼中實現增量的功能,直接在item中增加Url字段。

item['Url'] = response.url

然后在數據端把儲存url的column設置成unique。

之后在python代碼中捕獲數據庫commit時返回的異常,忽略掉或者轉入log中都可以。

我使用的是SqlAlchemy。我是這么寫的

from sqlalchemy.exc import IntegrityError

class XxxPipeline(object):

def process_item(self, item, spider):

#一些session.add()

#........

try:

session.commit()

print 'crawl %s done!' % item['Url']

except IntegrityError:

print 'skip %s .' % item['Url']

return item

雖然每次crawl都會重復抓取一些數據,但最終結果庫內不會有相同的Url。

對于小規模的爬蟲,這種重復抓取的成本基本可以忽略。