這篇文章主要介紹python分布式爬蟲中的redis如何使用,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
創(chuàng)新互聯(lián)專注于企業(yè)成都全網(wǎng)營銷、網(wǎng)站重做改版、達坂城網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、H5開發(fā)、商城開發(fā)、集團公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為達坂城等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
利用redis做分布式系統(tǒng),最經(jīng)典的就是scrapy-Redis,這是比較成熟的框架。同時我們也可以利用Redis的隊列功能或者訂閱發(fā)布功能來打造自己的分布式系統(tǒng)。
Redis作為通信載體的優(yōu)點是讀寫迅速,對爬蟲的速度影響可忽略不計,使用比較普遍。
主程序示例:
import scrapy from scrapy.http import Request from scrapy.selector import HtmlXPathSelector from scrapy.dupefilter import RFPDupeFilter from scrapy.core.scheduler import Scheduler import redis from ..items import XiaobaiItem from scrapy_redis.spiders import RedisSpider class RenjianSpider(RedisSpider): name = 'baidu' allowed_domains = ['baidu.com'] def parse(self, response): news_list = response.xpath('//*[@id="content-list"]/div[@class="item"]') for news in news_list: content = response.xpath('.//div[@class="part1"]/a/text()').extract_first().strip() url = response.xpath('.//div[@class="part1"]/a/@href').extract_first() yield XiaobaiItem(url=url,content=content) yield Request(url='http://dig..com/',callback=self.parse)
以上是“python分布式爬蟲中的Redis如何使用”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!