• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于Scrapy的分布式爬蟲系統(tǒng)的設(shè)計與實現(xiàn)

    2017-09-12 02:01:42李代祎謝麗艷錢慎一吳懷廣
    關(guān)鍵詞:數(shù)據(jù)庫

    李代祎,謝麗艷,錢慎一,吳懷廣*

    (1.鄭州輕工業(yè)學(xué)院 計算機與通信工程學(xué)院,河南 鄭州 450002; 2.河南省工商行政管理學(xué)校,河南 鄭州 450002)

    基于Scrapy的分布式爬蟲系統(tǒng)的設(shè)計與實現(xiàn)

    李代祎1,謝麗艷2,錢慎一1,吳懷廣1*

    (1.鄭州輕工業(yè)學(xué)院 計算機與通信工程學(xué)院,河南 鄭州 450002; 2.河南省工商行政管理學(xué)校,河南 鄭州 450002)

    隨著互聯(lián)網(wǎng)的快速發(fā)展,其信息量和相關(guān)服務(wù)也隨之快速增長.如何從海量的信息中快速、準確地抓取所需要的信息變得越來越重要,因此負責互聯(lián)網(wǎng)信息收集工作的網(wǎng)絡(luò)爬蟲將面臨著巨大的機遇和挑戰(zhàn).目前國內(nèi)外一些大型搜索引擎只給用戶提供不可制定的搜索服務(wù),而單機的網(wǎng)絡(luò)爬蟲又難當重任,因此可定制性強、信息采集速度快和規(guī)模大的分布式網(wǎng)絡(luò)爬蟲便應(yīng)運而生.通過對原有Scrapy框架的學(xué)習(xí)和研究,將Scrapy和Redis結(jié)合改進原有的爬蟲框架,設(shè)計并實現(xiàn)了一個基于Scrapy框架下的分布式網(wǎng)絡(luò)爬蟲系統(tǒng),然后將從安居客、58同城、搜房等網(wǎng)站抓取的二手房信息存入MongoDB中,便于對數(shù)據(jù)進行進一步的處理和分析.結(jié)果表明基于Scrapy框架下的分布式網(wǎng)絡(luò)爬蟲系統(tǒng)同單機網(wǎng)絡(luò)爬蟲系統(tǒng)相比效率更高且更穩(wěn)定.

    Scrapy;分布式;Scrapy-Reids;網(wǎng)絡(luò)爬蟲;MongoDB;數(shù)據(jù)存儲

    互聯(lián)網(wǎng)中的信息量隨著互聯(lián)網(wǎng)的迅速發(fā)展而越來越多,在2008年Google公司宣布他們檢索到的網(wǎng)頁已經(jīng)超過了1萬億,然而其檢索到的網(wǎng)頁僅僅是互聯(lián)網(wǎng)上的一部分而已[1],如何從大量的信息中挖掘出有用的信息就成了當今的熱門問題,搜索引擎也正是在這種需求下而誕生的技術(shù).搜索引擎是通過網(wǎng)絡(luò)爬蟲從互聯(lián)網(wǎng)中挖掘大量需求信息,然后網(wǎng)絡(luò)爬蟲將這些信息存儲在數(shù)據(jù)庫中,以便將來根據(jù)用戶需求對其進行處理,它用到人工智能、信息檢索、計算機網(wǎng)絡(luò)、數(shù)據(jù)庫、分布式處理、數(shù)據(jù)挖掘、機器學(xué)習(xí)和自然語言處理等多領(lǐng)域的理論技術(shù),具有很強的綜合性和挑戰(zhàn)性[2-3].

    目前國內(nèi)外在網(wǎng)絡(luò)爬蟲領(lǐng)域已經(jīng)有了很多研究,例如,爬行策略、海量數(shù)據(jù)存儲、海量數(shù)據(jù)索引、網(wǎng)頁評級等.但是較為成熟的大型網(wǎng)絡(luò)爬蟲只能為用戶提供不可定制的搜索服務(wù),且很多網(wǎng)絡(luò)爬蟲的技術(shù)都被列為商業(yè)機密,不對外開放.在開源爬蟲方面,例如,Larbin、Nutch、heritrix等已經(jīng)是比較成熟的網(wǎng)絡(luò)爬蟲項目,但是它們大多為單一網(wǎng)絡(luò)爬蟲,并且存在著性能不穩(wěn)定、用戶親和性較低、對中文支持不足和配置復(fù)雜等問題[4-5].因此,部署方便、可定制性高的中小規(guī)模分布式網(wǎng)絡(luò)爬蟲取代傳統(tǒng)的網(wǎng)絡(luò)爬蟲勢不可擋.

    1 分布式網(wǎng)絡(luò)爬蟲技術(shù)基礎(chǔ)

    1.1 網(wǎng)絡(luò)爬蟲

    網(wǎng)絡(luò)爬蟲(Web Crawler)是一種按照一定規(guī)則在互聯(lián)網(wǎng)上自動獲取處理網(wǎng)頁的計算機程序,其廣泛地應(yīng)用于互聯(lián)網(wǎng)搜索引擎或網(wǎng)頁緩存管理中[6].簡單來講,URL資源存放在一個隊列中,此隊列負責URL資源的優(yōu)先級管理.首先網(wǎng)絡(luò)爬蟲從隊列中獲取一個 URL資源 并下載此網(wǎng)頁,然后提取該網(wǎng)頁中的其它URL 資源并放入隊列中.重復(fù)上述過程,直到爬蟲將其關(guān)閉[7-8].通用的網(wǎng)絡(luò)爬蟲結(jié)構(gòu)如圖1所示.

    圖1 通用的網(wǎng)絡(luò)爬蟲結(jié)構(gòu)Fig.1 General web crawler architecture

    網(wǎng)絡(luò)爬蟲通過不同爬行策略遞歸的訪問頁面、保存頁面,最終獲取所需信息.目前網(wǎng)絡(luò)爬蟲遵守以下4種爬行策略規(guī)則[9]:

    1)選擇爬行規(guī)則:使用廣度優(yōu)先的爬行策略.一個網(wǎng)絡(luò)爬蟲的目的是抓取互聯(lián)網(wǎng)中最相關(guān)的網(wǎng)頁,而不是隨機的獲取互聯(lián)網(wǎng)的某些樣本網(wǎng)頁.

    2)回訪規(guī)則:互聯(lián)網(wǎng)是動態(tài)的,互聯(lián)網(wǎng)中網(wǎng)頁的建立、修改和刪除等活動在不斷進行.然而一個爬蟲活動可能持續(xù)和長時間,所以爬蟲要制定回訪規(guī)則來訪問更新的網(wǎng)頁.

    3)禮貌規(guī)則:如果網(wǎng)絡(luò)爬蟲不斷抓取同一臺服務(wù)器上的網(wǎng)頁,當請求過多時會造成服務(wù)器癱瘓.因此網(wǎng)絡(luò)爬蟲在正常運行的同時也要兼顧服務(wù)器的正常運行.

    4)并行規(guī)則:網(wǎng)絡(luò)爬蟲可以通過多線程并發(fā)地運行多個爬行進程,通過這樣可以極大的降低開銷和提高下載效率.

    1.2 Scrapy-Redis

    Scrapy-Redis[10]是基于Redis的Scrapy分布式組件,其將任務(wù)和數(shù)據(jù)信息的存取放到redis queue中,使多臺服務(wù)器可以同時執(zhí)行crawl和items process,從而大大提高了數(shù)據(jù)爬取和處理的效率.其功能為:①多個爬蟲共享一個redis queue 隊列,適合大范圍、多域名的爬蟲集群.②爬取的items存放到items redis queue隊列,可以開啟多個items process來處理爬取的數(shù)據(jù).Scrapy-Redis各個組件之間的關(guān)系如圖2所示.

    圖2 Scrapy框架圖Fig.2 Scrapy frame diagram

    1.3 數(shù)據(jù)存儲NoSQL

    由于網(wǎng)絡(luò)爬蟲爬取的數(shù)據(jù)大多為半結(jié)構(gòu)化或非結(jié)構(gòu)化的數(shù)據(jù),并且傳統(tǒng)的關(guān)系型數(shù)據(jù)庫并不擅長存儲和處理此類數(shù)據(jù).因此選擇非關(guān)系型數(shù)據(jù)庫 NoSQL 存儲爬取到的數(shù)據(jù).

    NoSQL 數(shù)據(jù)庫大致分為4類[11]:

    1)鍵值(Key-Value)存儲數(shù)據(jù)庫:Key-Value模型對于IT系統(tǒng)來說的優(yōu)勢在于簡單、易部署.例如:Tokyo Cabinet/Tyrant,Redis,Voldemort,Oracle BDB.

    2)列存儲數(shù)據(jù)庫:此類數(shù)據(jù)庫通常是針對海量的數(shù)據(jù)實施分布式存儲.鍵仍然存在且指向了多個列.如:Cassandra,HBase,Riak.

    3)文檔型數(shù)據(jù)庫:此類型的數(shù)據(jù)模型使版本化和半結(jié)構(gòu)化的文檔以特定的格式存儲,例如,JSON.文檔型數(shù)據(jù)庫的查詢效率比較高,如:CouchDB,MongoDb,SequoiaDB.

    4)圖形(Graph)數(shù)據(jù)庫:圖形結(jié)構(gòu)的數(shù)據(jù)庫是使用靈活的圖形模型,并且該模型能夠擴展到多個服務(wù)器上.如:Neo4J,InfoGrid,Infinite Graph.

    2 分布式網(wǎng)絡(luò)爬蟲的研究與設(shè)計

    2.1 Scrapy框架研究

    2.1.1 Scrapy框架 如圖2所示,Scrapy 框架的模塊組成有[12-14]:

    1)Scrapy引擎(Scrapy Engine):負責調(diào)控數(shù)據(jù)在系統(tǒng)中各個模塊間傳遞,以及調(diào)用相應(yīng)的函數(shù)響應(yīng)特定的事件.

    2)調(diào)度器模塊(Scheduler):負責對所有待爬取的 URL資源進行統(tǒng)一管理.例如,將接收 Scrapy 引擎提交的URL資源插入到請求隊列中;將URL從隊列中取出并發(fā)送給Scrapy引擎以響應(yīng)Scrapy引擎發(fā)出的URL 請求.

    3)下載器中間件模塊(Downloader Middlewares):負責傳遞Scrapy引擎發(fā)送給下載器模塊的URL請求和下載器模塊發(fā)送給 Scrapy 引擎的HTTP 響應(yīng).

    a)下載器模塊(Downloader):負責下載Web 頁面上的數(shù)據(jù),并最終通過Scrapy 引擎將其發(fā)送給爬蟲模塊.

    b)爬蟲模塊(Spider):分析從下載器模塊獲取到的數(shù)據(jù),然后提取出Item 或得到相關(guān)的URL資源.

    c)爬蟲中間件模塊(Spider Middlewares):負責處理爬蟲模塊的輸入和輸出.

    d)數(shù)據(jù)流水線模塊(Item Pipeline):通過數(shù)據(jù)清理、數(shù)據(jù)驗證、數(shù)據(jù)持久化等操作來處理由爬蟲模塊提取和發(fā)送過來的Item.

    2.1.2 Scrapy框架擴展 Scrapy框架簡單、高效,且被廣泛應(yīng)用于數(shù)據(jù)的挖掘、監(jiān)測和自動測試.但是Scrapy框架也存在不足,例如,Scrapy框架下的爬蟲不支持分布式、單線程執(zhí)行、內(nèi)存消耗過大等.因此深入理解Scrapy框架的擴展機制,通過編程來替換或增加框架中的一些模塊來彌補其不足是十分必要的.本文對Scrapy框架做了如下補充:

    1)本文利用Scrapy-Redis通過redis對爬取的請求進行存儲和調(diào)度,并對爬取產(chǎn)生的項目(items)存儲以供后續(xù)處理使用.Scrapy-Redis的組件如下[15-16].

    a)Connection.py:對settings進行配置,實現(xiàn)通過Python訪問redis數(shù)據(jù)庫,被dupefilter和scheduler調(diào)用,涉及到redis存取的都要使用到這個模塊.

    b)dupefilter.py:使用redis的set數(shù)據(jù)結(jié)構(gòu)對reqeust進行去重處理.

    c)queue.py:將request存入到queue中,調(diào)度時再將其彈出.目前隊列的調(diào)度有三種方式:FIFO(先入先出)的SpaiderQueue,SpiderPriorityQueue和LIFO(后入先出)的SpiderStack.本文用的是第二種方式.

    d)pipelines.py:將Item存儲在redis中以實現(xiàn)分布式處理.

    圖3 Scrapy-Redis組件之間的關(guān)系Fig.3 Relationship between Scrapy-Redis components

    e)scheduler.py:重寫scrapy中的調(diào)度模塊,實現(xiàn)crawler的分布式調(diào)度.

    f)spider.py:重寫scrapy中的爬蟲模塊,從redis數(shù)據(jù)庫的隊列中讀取要爬取的url,然后執(zhí)行爬取.若爬取過程中有其它的url返回,繼續(xù)執(zhí)行爬蟲直到所有的request完成后,再從隊列中讀取url,循環(huán)上述過程.

    通過分析可得,Scrapy-Redis各個組件之間的關(guān)系如圖3所示.

    2)單機硬盤與內(nèi)存容量有限、數(shù)據(jù)的頻繁查詢是造成了CPU性能的嚴重下降的主要原因,因此數(shù)據(jù)庫的選擇顯的尤為重要.由于網(wǎng)絡(luò)爬蟲爬取的數(shù)據(jù)大多數(shù)為非結(jié)構(gòu)化的數(shù)據(jù),因此本文選取擅長存取非結(jié)構(gòu)化數(shù)據(jù)的數(shù)據(jù)庫MongoDB[17-18].經(jīng)過擴展后的Scrapy框架如圖4所示.

    2.2 反爬蟲技術(shù)應(yīng)對策略

    目前很多網(wǎng)站禁止爬蟲爬取數(shù)據(jù),網(wǎng)站通過用戶請求的Headers、用戶行為、網(wǎng)站目錄和數(shù)據(jù)加載等方式來進行反爬蟲,從而增大爬取的難度.本爬蟲主要采取了以下應(yīng)對策略:

    1)設(shè)置download_delay參數(shù). 如果下載等待時間過長,則短時間大規(guī)模抓取數(shù)據(jù)的任務(wù)將不能完成,而太短則會增加被禁止爬取數(shù)據(jù)的概率.因此在settings.py中設(shè)置:DOWNLOAD_DELAY = 2.

    圖4 擴展后的Scrapy框架Fig.4 The extended Scrapy framework

    2)禁用cookies,可以防止爬蟲行為被使用cookies識別爬蟲軌跡的網(wǎng)站所察覺,因此需要在settings.py 中設(shè)置:

    COOKIES_ENABLES=False.

    3)偽裝user agent,防止被服務(wù)器識別,將user agent 寫入rotate_useragent.py文件里形成user-agent池,在發(fā)送請求時會從user-agent池中隨機選取一個使用.因此需要在settings.py中設(shè)置:

    DOWNLOADER_MIDDLEWARES={′scrapy.contrib.downloadermiddleware.useragent.UserAgentMiddleware′ :None,′

    HouseInfoSpider.spiders.rotate_useragent.RotateUserAgentMiddleware′ :400,}

    2.3 數(shù)據(jù)爬取與存儲

    2.3.1 網(wǎng)頁結(jié)構(gòu)和數(shù)據(jù)分析 通過對網(wǎng)頁HTML結(jié)構(gòu)進行分析,從而完成爬蟲模塊的編寫.本爬蟲的URL隊列中有3種類型的URL,以安居客的網(wǎng)頁結(jié)構(gòu)為例進行分析.該網(wǎng)頁中所包含數(shù)據(jù)的節(jié)點是class=”houselist-mod”的

      節(jié)點,該節(jié)點下的
    • 節(jié)點有50個,每個
    • 節(jié)點中包含有需要提取的目標數(shù)據(jù),即index類型的URL.Scrapy提取數(shù)據(jù)使用特定的 XPath 表達式來提取 HTML 網(wǎng)頁中的數(shù)據(jù),偽代碼如下所示:

      def parse_detail(self,response):

      item = HouseInfoItem()

      selector = scrapy.Selector(response)

      item[′url′] = response.url

      item[′village_title′]= #標題

      list_first_item(selector.xpath(′//h3[@class ="long-title"][1]/text()′).extract()).strip() }

      (……)

      item[′village_describe′]= #描述

      list_first_item(selector.xpath(′//div[@class="houseInfoV2-item-descjs-house-explain"]/text()′).extract()).replace(" ","").replace(" ","").replace("","").strip()

      yield item

      從網(wǎng)站上獲得數(shù)據(jù)followers、fullname等在Item中統(tǒng)一建模.相應(yīng)代碼在items.py中:

      import scrapy

      class HouseInfoItem(scrapy.Item):

      url=scrapy.Field() #當前網(wǎng)頁的url

      village_name=scrapy.Field() #小區(qū)名

      village_location=scrapy.Field() #位置

      village_area=scrapy.Field() #面積

      (……)

      2.3.2 數(shù)據(jù)庫連接和參數(shù)設(shè)置 在settings.py文件中設(shè)置MongoDB的相應(yīng)參數(shù):服務(wù)器、端口號、數(shù)據(jù)庫,然后在指定的位置添加數(shù)據(jù)庫設(shè)置:

      #MongoDB

      MONGO_URI=′mongodb://127.0.0.1:27017′

      MONGO_DATABASE = ′HouseInfo′

      #改變默認PIPELNES

      ITEM_PIPELINES={′HouseInfoSpider.pipelines.MongoPipeline′:300,′scrapy_redis.pipelines.RedisPipeline′:400,}

      在pipelines.py文件中定義一個函數(shù)連接數(shù)據(jù)庫:

      #數(shù)據(jù)庫初始化

      Class MongoDBPipeline(object):

      hp_collection_name = ′house_info′

      def_inir_(sef,mongo_uri,mongo_db)

      (……)

      #數(shù)據(jù)庫連接

      def open_spider(self,spider):

      self.client=pymongo.MongoClient

      (self.mongo_uri)

      self.db = self.client[self.mongo_db]

      #將數(shù)據(jù)存入到數(shù)據(jù)庫中

      def process_item(self,item,spider):

      if isinstance(item,HouseInfoItem):

      key_index = item[′url′]

      if not self.db[self.hp_collection_name] .find({′url′:key_index}).count():

      self.db[self.hp_collection_name].insert(dict(item))

      return item

      3 實驗結(jié)果分析

      3.1 實驗結(jié)果

      Ipush.py文件中將要爬取的原始網(wǎng)站url存入redis數(shù)據(jù)庫的隊列中,然后通過scrapy crawlall命令執(zhí)行爬蟲,最后將爬取的數(shù)據(jù)存入MongoDB中.爬取結(jié)果顯示如圖5所示.

      圖5 MongoDB中的數(shù)據(jù)Fig.5 Data in MongoDB

      3.2 結(jié)果分析

      整個系統(tǒng)的部署:1臺安裝有redis和MongoDB數(shù)據(jù)庫的服務(wù)器作為爬蟲的主節(jié)點;1臺安裝有MongoDB數(shù)據(jù)庫的服務(wù)器作為爬蟲從節(jié)點;1臺安裝有MongoDB數(shù)據(jù)庫的單獨服務(wù)器.硬件配置如表1所示.

      表1 硬件配置

      實驗測試中,為了防止爬蟲行為被禁止,將最高爬取頻率設(shè)置為2秒/網(wǎng)頁,系統(tǒng)運行5個小時(單機爬取和分布式爬取選在同一時段),其爬取結(jié)果如表2所示.

      通過分析表2中的數(shù)據(jù)可知,每個節(jié)點每小時爬取的網(wǎng)頁數(shù)量在1 700左右.為了防止爬蟲被禁止,爬蟲的最高頻率設(shè)置為2秒/網(wǎng)頁.由于受網(wǎng)絡(luò)延遲、I/O延遲等的限制,每小時爬取的網(wǎng)頁數(shù)量略低于理論上最高值1 800(60*60/2=1 800).另外,2個爬蟲節(jié)點每小時爬取url的數(shù)量幾乎接近1∶1,這也證明了系統(tǒng)中各個爬蟲節(jié)點的負載均衡.同時運行結(jié)果也表明,經(jīng)過擴展的Scrapy框架使得爬取速度大大提高了.

      表2 爬取結(jié)果

      根據(jù)表2中數(shù)據(jù),利用Matlab可得到圖6的線形圖.

      圖6 分布式網(wǎng)絡(luò)爬蟲測試Fig.6 Distributed web crawler testing

      圖6中每條線的斜率就代表其爬蟲的爬取效率.從圖6中可以看出一個節(jié)點進行爬取時的效率要遠遠低于兩個節(jié)點同時爬取時的效率.綜上所述分布式爬蟲爬取的效率遠高于單機爬蟲.

      4 結(jié)束語

      本文通過對開源網(wǎng)絡(luò)爬蟲Scrapy框架的深入研究和擴展,利用Scrapy-redis組件之間的相互作用,設(shè)計和實現(xiàn)了一個分布式的網(wǎng)絡(luò)爬蟲系統(tǒng);通過與數(shù)據(jù)庫的連接,將爬取的數(shù)據(jù)存入MongoDB中,便于對數(shù)據(jù)進行查詢、統(tǒng)計和分析;同時在技術(shù)上也為數(shù)據(jù)研究人員提供了方便的數(shù)據(jù)獲取方法. 但是本文只對URL進行了去重處理,并沒有考慮節(jié)點爬取的負載均衡問題,同時爬取過程中網(wǎng)頁被重置問題目前也沒有好的解決辦法,這些問題需要進一步的探索研究.

      [1] VLADISLAV Shkapenyuk,TORSTEN Suel.Desigen and Imlementation of a High-Performance Distributed Web Crawler.Technical Report,In Proceedings of the 18th International conference on Data Engineering(ICDE)[C]∥IEEE CS Press,2001:357-368.

      [2] 薛麗敏,吳琦,李駿.面向?qū)S眯畔@取的用戶定制主題網(wǎng)絡(luò)爬蟲技術(shù)研究[J].信息網(wǎng)絡(luò)安全,2017(2):28-31.

      [3] 王素華.基于網(wǎng)絡(luò)爬蟲技術(shù)的學(xué)生信息收集方法[J].電腦迷,2016(3):89-92.

      [4] HANS Bjerkander,ERIK Karlsson.Distributed Web-Crawler[D].Master Thesis Chalmers University of Technology,2013:1-2.

      [5] 郭濤,黃銘鈞.社區(qū)網(wǎng)絡(luò)爬蟲的設(shè)計與實現(xiàn)[J].智能計算機與應(yīng)用,2012(4):78-92.

      [6] 董日壯,郭曙超.網(wǎng)絡(luò)爬蟲的設(shè)計與實現(xiàn)[J].電腦知識與技術(shù),2014(17):201-205.

      [7] JUNGHOO Cho,HECTOR Garcia-Molina.Parallel crawlers[C]∥Of the 11th International World-Wide Web Conference,2002:32-35.

      [8] 李勇,韓亮.主題搜索引擎中網(wǎng)絡(luò)爬蟲的搜索策略研究[J].計算機工程與科學(xué),2008(3):42-45.

      [9] 黃聰,李格人,羅楚.大數(shù)據(jù)時代下爬蟲技術(shù)的興起 [J].計算機光盤軟件與應(yīng)用,2013(17):79-80.

      [10] 趙鵬程.分布式書籍網(wǎng)絡(luò)爬蟲系統(tǒng)的設(shè)計與現(xiàn)[D].成都:西南交通大學(xué),2014.

      [11] MOHR G,STACK M,RNITOVIC I,et al.Introduction to heritrix [C]∥4th International Web Archiving Workshop,2004:109-115.

      [12] CATTELL R.Scalable SQL and NoSQL data store [J].ACM SIGMOD Record,2011(2):12-27.

      [13] 劉學(xué).分布式多媒體網(wǎng)絡(luò)爬行系統(tǒng)的設(shè)計與實現(xiàn) [D].武漢:華中科技大學(xué),2012:10-25.

      [14] 李賢芳.面向作戰(zhàn)系統(tǒng)應(yīng)用的數(shù)據(jù)分發(fā)中間的研究與設(shè)計[D].南京:南京理工大學(xué),2013.

      [15] THELWALl M.A web crawler design for data mining[J].Journal of Information Science,2001,27(5):319-325.

      [16] 徐亦璐.基于多線程的網(wǎng)絡(luò)爬蟲設(shè)計與實現(xiàn)[J].計算機光盤軟件與應(yīng)用,2011(2):152-152.

      [17] 王勁東.基于高級數(shù)據(jù)加密標準 AES 的數(shù)據(jù)庫加密技術(shù)研究與實現(xiàn)[D].西安:西安電子科技大學(xué),2011.

      [18] 雷德龍,郭殿升,陳崇成,等.基于MongoDB的矢量空間數(shù)據(jù)云存儲與處理系統(tǒng)[J].地球信息科學(xué)學(xué)報,2014(4):65-67.

      責任編輯:時 凌

      Design and Implementation of Distributed Crawler System Based on Scrapy

      LI Daiyi1,XIE Liyan2,QIAN Shenyi1,WU Huaiguang1*

      (1.School of Computer and Communication Engineerring,Zhengzhou University of Light Industry,Zhengzhou 450002,China; 2.Henan School of Administration of Industry and Commerce,Zhengzhou 450002,China)

      With the rapid growth of the Internet,the amount of information and related services are growing rapidly.How to capture the information from massive information quickly and accurately is becoming more and more important,so the network crawler is also facing great challenges and opportunities.At present,domestic and foreign large search engines can only provide non-customizable search services for users,and a single-machine web crawler cannot assume the difficult task.Therefore,the distributed web crawler with flexible customization,high information acquisition speed and large scale has come into being.In this paper,through the study of the original Scrapy framework,the original crawler framework is improved by combining Scrapy and Redis,and a distributed crawler system based on Web information Scrapy framework is designed and implemented.The second-hand housing information captured from www.anjuke.com,www.58.com and www.fang.com is stored in MongoDB,so that the data can be processed and analyzed.The results show that the distributed crawler system based on Scrapy framework is more efficient and stable than the single-machine web crawler system.

      Scrapy;distributed;Scrapy-Reids;Web crawler;MongoDB;data storage

      2017-05-24.

      國家自然科學(xué)基金項目(61672470);河南省科技攻關(guān)項目(162102410076);河南省重大科技專項(161100110900).

      李代祎(1988-),男,碩士生,主要從事計算機技術(shù),數(shù)據(jù)挖掘,機器學(xué)習(xí)等的研究;*

      吳懷廣(1976-),男,博士,副教授,主要從事大數(shù)據(jù)、軟件工程、形式化方法、空間移動計算等的研究.

      1008-8423(2017)03-0317-06

      10.13501/j.cnki.42-1569/n.2017.09.016

      TP3

      A

      猜你喜歡
      數(shù)據(jù)庫
      數(shù)據(jù)庫
      財經(jīng)(2017年15期)2017-07-03 22:40:49
      數(shù)據(jù)庫
      財經(jīng)(2017年2期)2017-03-10 14:35:35
      兩種新的非確定數(shù)據(jù)庫上的Top-K查詢
      數(shù)據(jù)庫
      財經(jīng)(2016年15期)2016-06-03 07:38:02
      數(shù)據(jù)庫
      財經(jīng)(2016年3期)2016-03-07 07:44:46
      數(shù)據(jù)庫
      財經(jīng)(2016年6期)2016-02-24 07:41:51
      數(shù)據(jù)庫
      財經(jīng)(2015年3期)2015-06-09 17:41:31
      數(shù)據(jù)庫
      財經(jīng)(2014年21期)2014-08-18 01:50:18
      數(shù)據(jù)庫
      財經(jīng)(2014年6期)2014-03-12 08:28:19
      數(shù)據(jù)庫
      財經(jīng)(2013年6期)2013-04-29 17:59:30
    秋霞伦理黄片| 曰老女人黄片| 色视频在线一区二区三区| 午夜激情av网站| 男人舔女人的私密视频| 在线精品无人区一区二区三| 亚洲色图 男人天堂 中文字幕| 夫妻午夜视频| 亚洲精品成人av观看孕妇| 国产乱人偷精品视频| 久久av网站| 日韩av不卡免费在线播放| 亚洲综合色网址| av在线播放精品| 国产亚洲一区二区精品| 午夜福利一区二区在线看| 亚洲欧美精品自产自拍| 国产亚洲欧美精品永久| 热99国产精品久久久久久7| av线在线观看网站| 欧美日韩综合久久久久久| 看非洲黑人一级黄片| 久久综合国产亚洲精品| 亚洲国产欧美日韩在线播放| 黄色一级大片看看| 一区二区av电影网| av电影中文网址| 午夜精品国产一区二区电影| h视频一区二区三区| 欧美av亚洲av综合av国产av | 国产精品久久久久久精品古装| av在线播放精品| e午夜精品久久久久久久| 一级毛片黄色毛片免费观看视频| 亚洲欧美精品自产自拍| 黄网站色视频无遮挡免费观看| 国产乱来视频区| 国产一级毛片在线| 如何舔出高潮| 久久精品亚洲熟妇少妇任你| 国产乱来视频区| 狠狠精品人妻久久久久久综合| 久久狼人影院| 亚洲一区二区三区欧美精品| 黑人欧美特级aaaaaa片| 久久久久久人人人人人| 成人亚洲欧美一区二区av| bbb黄色大片| 日日爽夜夜爽网站| 狠狠精品人妻久久久久久综合| 国产欧美亚洲国产| 色婷婷av一区二区三区视频| 我要看黄色一级片免费的| 亚洲专区中文字幕在线 | 99香蕉大伊视频| 十八禁人妻一区二区| 精品免费久久久久久久清纯 | 国产成人欧美在线观看 | a级毛片黄视频| 色婷婷av一区二区三区视频| 视频在线观看一区二区三区| 99国产综合亚洲精品| 老司机靠b影院| 黄色怎么调成土黄色| 久久97久久精品| 午夜福利影视在线免费观看| 9热在线视频观看99| 婷婷色av中文字幕| 捣出白浆h1v1| 日韩一卡2卡3卡4卡2021年| 99九九在线精品视频| 男女午夜视频在线观看| 永久免费av网站大全| av又黄又爽大尺度在线免费看| 国产精品熟女久久久久浪| 精品国产一区二区三区四区第35| 欧美日韩成人在线一区二区| 丁香六月欧美| 亚洲少妇的诱惑av| 亚洲七黄色美女视频| 自拍欧美九色日韩亚洲蝌蚪91| 国产精品久久久久成人av| 午夜精品国产一区二区电影| 日本91视频免费播放| 欧美人与善性xxx| videos熟女内射| 亚洲精品中文字幕在线视频| av女优亚洲男人天堂| 热re99久久精品国产66热6| 日韩中文字幕欧美一区二区 | 国产一区亚洲一区在线观看| 日本vs欧美在线观看视频| 久久久久视频综合| 午夜激情久久久久久久| 国产亚洲午夜精品一区二区久久| 日本午夜av视频| 国产精品秋霞免费鲁丝片| 亚洲伊人久久精品综合| 国产片内射在线| 日韩免费高清中文字幕av| 亚洲国产精品成人久久小说| 亚洲精品国产av蜜桃| 黑人巨大精品欧美一区二区蜜桃| 午夜福利一区二区在线看| 夫妻性生交免费视频一级片| 19禁男女啪啪无遮挡网站| 成人亚洲欧美一区二区av| 男女下面插进去视频免费观看| 极品人妻少妇av视频| 少妇人妻久久综合中文| 成人影院久久| av一本久久久久| 9色porny在线观看| 丰满少妇做爰视频| 欧美亚洲日本最大视频资源| 免费观看人在逋| 中文精品一卡2卡3卡4更新| 九色亚洲精品在线播放| 久久鲁丝午夜福利片| 久久久精品国产亚洲av高清涩受| 丝袜脚勾引网站| 国产一卡二卡三卡精品 | 好男人视频免费观看在线| 国产精品麻豆人妻色哟哟久久| 精品免费久久久久久久清纯 | 十八禁高潮呻吟视频| 人妻一区二区av| 日韩av在线免费看完整版不卡| 久久久久国产一级毛片高清牌| 亚洲精品国产av成人精品| 国产日韩欧美亚洲二区| 国产熟女欧美一区二区| 精品午夜福利在线看| 99久国产av精品国产电影| 亚洲欧美色中文字幕在线| 精品国产乱码久久久久久男人| 久久久精品国产亚洲av高清涩受| 成人18禁高潮啪啪吃奶动态图| 少妇 在线观看| 麻豆精品久久久久久蜜桃| 999精品在线视频| 午夜影院在线不卡| 国产成人一区二区在线| 亚洲精品一二三| 人体艺术视频欧美日本| av在线观看视频网站免费| 国产男女内射视频| 9热在线视频观看99| 免费在线观看完整版高清| 国产极品粉嫩免费观看在线| 国产 精品1| 免费在线观看完整版高清| 日本wwww免费看| 欧美国产精品va在线观看不卡| 精品一品国产午夜福利视频| 午夜福利免费观看在线| 亚洲综合色网址| 中文字幕av电影在线播放| 亚洲av综合色区一区| 九九爱精品视频在线观看| 精品亚洲成国产av| av视频免费观看在线观看| 国产不卡av网站在线观看| 国产一区二区三区综合在线观看| 日韩一本色道免费dvd| www.熟女人妻精品国产| 久久久久久人妻| 亚洲国产精品一区二区三区在线| 久久久久人妻精品一区果冻| 亚洲成人免费av在线播放| 日韩一本色道免费dvd| 久久精品久久精品一区二区三区| 一本色道久久久久久精品综合| 美国免费a级毛片| 精品人妻在线不人妻| 一区在线观看完整版| 一区二区三区乱码不卡18| 成人午夜精彩视频在线观看| 国产一区二区在线观看av| 老司机在亚洲福利影院| 欧美黑人欧美精品刺激| 日韩av免费高清视频| 国产精品久久久久久精品古装| 国产精品av久久久久免费| 国产精品欧美亚洲77777| 国产成人欧美| 天天躁夜夜躁狠狠久久av| 亚洲精品av麻豆狂野| 欧美精品高潮呻吟av久久| 久久99一区二区三区| av又黄又爽大尺度在线免费看| 纵有疾风起免费观看全集完整版| 人人妻人人澡人人爽人人夜夜| 日本av免费视频播放| 欧美另类一区| 精品一区二区三区av网在线观看 | 色网站视频免费| 制服诱惑二区| 免费不卡黄色视频| 天天躁日日躁夜夜躁夜夜| 涩涩av久久男人的天堂| 不卡视频在线观看欧美| 中文字幕另类日韩欧美亚洲嫩草| 日本wwww免费看| 国产精品女同一区二区软件| 精品少妇一区二区三区视频日本电影 | 99久久精品国产亚洲精品| 久久精品国产综合久久久| 999久久久国产精品视频| 巨乳人妻的诱惑在线观看| 亚洲,欧美,日韩| 另类亚洲欧美激情| 超色免费av| 成人国产av品久久久| 丝袜美腿诱惑在线| 国产精品成人在线| 久久午夜综合久久蜜桃| 亚洲欧美精品综合一区二区三区| 新久久久久国产一级毛片| 99精国产麻豆久久婷婷| 亚洲精品久久久久久婷婷小说| 在线观看国产h片| 精品国产超薄肉色丝袜足j| tube8黄色片| 国产精品久久久久成人av| 99久久人妻综合| 人体艺术视频欧美日本| 成人国语在线视频| 又黄又粗又硬又大视频| 精品亚洲成国产av| 久久国产精品大桥未久av| 精品一区二区三区四区五区乱码 | 免费高清在线观看视频在线观看| 9色porny在线观看| 亚洲美女搞黄在线观看| 日韩熟女老妇一区二区性免费视频| 国产一区二区三区av在线| 人人妻人人添人人爽欧美一区卜| 欧美成人午夜精品| 日韩一区二区视频免费看| 91国产中文字幕| 欧美精品av麻豆av| 中文字幕亚洲精品专区| 尾随美女入室| 久久精品久久久久久噜噜老黄| av国产精品久久久久影院| 精品亚洲乱码少妇综合久久| 国产伦人伦偷精品视频| 少妇人妻 视频| 免费av中文字幕在线| 日韩免费高清中文字幕av| 80岁老熟妇乱子伦牲交| 日韩人妻精品一区2区三区| 欧美另类一区| 在线亚洲精品国产二区图片欧美| 久久久久久久久久久免费av| 久久久国产一区二区| 午夜激情av网站| 秋霞伦理黄片| 中文字幕人妻丝袜一区二区 | 最近2019中文字幕mv第一页| 久久精品aⅴ一区二区三区四区| 色精品久久人妻99蜜桃| 美女扒开内裤让男人捅视频| 国产片特级美女逼逼视频| 熟妇人妻不卡中文字幕| 性高湖久久久久久久久免费观看| 日本vs欧美在线观看视频| 日韩免费高清中文字幕av| 男人添女人高潮全过程视频| 久久免费观看电影| 亚洲国产精品一区三区| 亚洲熟女毛片儿| 午夜免费男女啪啪视频观看| 一区在线观看完整版| 久久99热这里只频精品6学生| 成年av动漫网址| 国产毛片在线视频| 亚洲av国产av综合av卡| 黑人欧美特级aaaaaa片| 久久精品aⅴ一区二区三区四区| 菩萨蛮人人尽说江南好唐韦庄| 久久久久久免费高清国产稀缺| 国产女主播在线喷水免费视频网站| av国产久精品久网站免费入址| 深夜精品福利| 欧美久久黑人一区二区| 精品人妻在线不人妻| 成人国产av品久久久| 在线看a的网站| 精品少妇内射三级| 欧美激情极品国产一区二区三区| 91老司机精品| 国产成人午夜福利电影在线观看| 亚洲av福利一区| 蜜桃在线观看..| 精品久久久久久电影网| 中文字幕制服av| 日韩大码丰满熟妇| 亚洲欧美一区二区三区国产| 亚洲一码二码三码区别大吗| 99久国产av精品国产电影| 亚洲av电影在线进入| 久久人人爽av亚洲精品天堂| a级片在线免费高清观看视频| av又黄又爽大尺度在线免费看| 久久精品国产a三级三级三级| 欧美精品一区二区免费开放| 国产乱来视频区| 人成视频在线观看免费观看| 亚洲一区中文字幕在线| 欧美xxⅹ黑人| 老司机深夜福利视频在线观看 | 人妻一区二区av| √禁漫天堂资源中文www| 丝袜喷水一区| 日本一区二区免费在线视频| 欧美 日韩 精品 国产| 婷婷色麻豆天堂久久| 亚洲精品日本国产第一区| 国产av码专区亚洲av| 一二三四中文在线观看免费高清| 国产一区二区三区综合在线观看| 黑人欧美特级aaaaaa片| 亚洲,欧美,日韩| 久久午夜综合久久蜜桃| 国产成人系列免费观看| 国产 一区精品| 国产黄色视频一区二区在线观看| 亚洲国产欧美一区二区综合| 国产精品免费视频内射| 日韩av在线免费看完整版不卡| 美女国产高潮福利片在线看| 国产成人精品无人区| 一本大道久久a久久精品| 亚洲成人av在线免费| 在线观看免费高清a一片| 蜜桃在线观看..| 日韩制服骚丝袜av| 国产 精品1| 亚洲 欧美一区二区三区| 国产乱来视频区| 亚洲,欧美精品.| 大香蕉久久成人网| xxxhd国产人妻xxx| 涩涩av久久男人的天堂| 男女之事视频高清在线观看 | 天天操日日干夜夜撸| 老司机深夜福利视频在线观看 | 看十八女毛片水多多多| 亚洲 欧美一区二区三区| 亚洲精品美女久久久久99蜜臀 | 如何舔出高潮| 99热国产这里只有精品6| 女的被弄到高潮叫床怎么办| 久久精品久久久久久噜噜老黄| 女人被躁到高潮嗷嗷叫费观| 亚洲欧美成人综合另类久久久| 悠悠久久av| 国产精品无大码| 免费看av在线观看网站| 99精品久久久久人妻精品| 国产精品久久久久久久久免| 视频区图区小说| 日韩制服丝袜自拍偷拍| 精品一区二区免费观看| 久久久国产欧美日韩av| 精品久久蜜臀av无| 午夜福利乱码中文字幕| 国产精品一区二区在线不卡| 免费在线观看完整版高清| 欧美精品av麻豆av| 天天躁狠狠躁夜夜躁狠狠躁| 国产成人精品久久久久久| 另类亚洲欧美激情| 男女免费视频国产| 精品久久蜜臀av无| 伊人久久大香线蕉亚洲五| 丝袜人妻中文字幕| 丰满少妇做爰视频| 飞空精品影院首页| 久久精品国产亚洲av高清一级| 日本av免费视频播放| 国精品久久久久久国模美| videos熟女内射| 一级,二级,三级黄色视频| 亚洲 欧美一区二区三区| 亚洲国产看品久久| 如日韩欧美国产精品一区二区三区| 91精品国产国语对白视频| 亚洲精品一区蜜桃| av在线观看视频网站免费| 老司机影院成人| 日本黄色日本黄色录像| 最近最新中文字幕免费大全7| 女人爽到高潮嗷嗷叫在线视频| 国产午夜精品一二区理论片| 精品国产一区二区久久| 久久久精品区二区三区| 亚洲精品aⅴ在线观看| 久久久久网色| 制服丝袜香蕉在线| 毛片一级片免费看久久久久| 另类精品久久| 日韩中文字幕欧美一区二区 | 在线免费观看不下载黄p国产| 热99久久久久精品小说推荐| 日韩精品有码人妻一区| 男人爽女人下面视频在线观看| 午夜免费观看性视频| av在线观看视频网站免费| 一本大道久久a久久精品| 国产乱人偷精品视频| 欧美精品一区二区大全| 黄片播放在线免费| 成年av动漫网址| 亚洲精品自拍成人| 一二三四中文在线观看免费高清| 美女午夜性视频免费| 欧美精品一区二区免费开放| 色播在线永久视频| 一本一本久久a久久精品综合妖精| 自拍欧美九色日韩亚洲蝌蚪91| 亚洲国产精品国产精品| 美女主播在线视频| 国产精品国产三级国产专区5o| 久久99一区二区三区| 9191精品国产免费久久| 成人午夜精彩视频在线观看| bbb黄色大片| 性色av一级| 天堂中文最新版在线下载| 丁香六月欧美| 高清视频免费观看一区二区| 精品午夜福利在线看| 亚洲成人一二三区av| 精品福利永久在线观看| 热re99久久国产66热| 亚洲成av片中文字幕在线观看| 久久人人爽av亚洲精品天堂| 国产精品一区二区在线观看99| 国产在视频线精品| 美女大奶头黄色视频| 秋霞在线观看毛片| 国产欧美日韩综合在线一区二区| a 毛片基地| 黑丝袜美女国产一区| 日本欧美国产在线视频| 欧美亚洲 丝袜 人妻 在线| 欧美成人精品欧美一级黄| 精品一区二区免费观看| 久久婷婷青草| 久久久久久久精品精品| 香蕉丝袜av| 黄色视频在线播放观看不卡| 日本色播在线视频| 国产野战对白在线观看| www.熟女人妻精品国产| 精品酒店卫生间| 咕卡用的链子| 亚洲激情五月婷婷啪啪| 三上悠亚av全集在线观看| 女人精品久久久久毛片| 欧美变态另类bdsm刘玥| 日韩成人av中文字幕在线观看| 午夜福利在线免费观看网站| a级毛片黄视频| 街头女战士在线观看网站| 久久人人97超碰香蕉20202| 国产一区亚洲一区在线观看| 日韩 欧美 亚洲 中文字幕| 国产极品粉嫩免费观看在线| 亚洲av在线观看美女高潮| 各种免费的搞黄视频| 久久毛片免费看一区二区三区| 看免费av毛片| 看免费成人av毛片| 亚洲 欧美一区二区三区| 五月开心婷婷网| 亚洲欧美清纯卡通| 你懂的网址亚洲精品在线观看| 精品国产国语对白av| 精品国产乱码久久久久久男人| 国产黄色视频一区二区在线观看| 最黄视频免费看| 一级爰片在线观看| 两个人看的免费小视频| 午夜福利免费观看在线| 黄色毛片三级朝国网站| 五月开心婷婷网| 久久久国产精品麻豆| 亚洲精品国产色婷婷电影| 午夜免费观看性视频| 国产亚洲欧美精品永久| 女人高潮潮喷娇喘18禁视频| 久久久久精品久久久久真实原创| 国产无遮挡羞羞视频在线观看| 欧美精品一区二区免费开放| 国产日韩欧美亚洲二区| 久久久精品94久久精品| 岛国毛片在线播放| 一边摸一边抽搐一进一出视频| 日本av免费视频播放| 91成人精品电影| 国产人伦9x9x在线观看| 亚洲人成77777在线视频| 午夜激情av网站| 别揉我奶头~嗯~啊~动态视频 | 久久精品亚洲熟妇少妇任你| 黄片无遮挡物在线观看| 在线观看人妻少妇| 青春草亚洲视频在线观看| 亚洲人成77777在线视频| 水蜜桃什么品种好| 国产国语露脸激情在线看| 精品视频人人做人人爽| 国精品久久久久久国模美| 亚洲国产精品一区二区三区在线| 老汉色∧v一级毛片| 最新在线观看一区二区三区 | 人人妻人人澡人人爽人人夜夜| 欧美日韩av久久| 观看av在线不卡| 欧美在线黄色| 国产av国产精品国产| 成人毛片60女人毛片免费| 美女视频免费永久观看网站| 日韩中文字幕视频在线看片| 91精品三级在线观看| 2021少妇久久久久久久久久久| 久久性视频一级片| 丁香六月天网| 精品一区二区三区av网在线观看 | 久久韩国三级中文字幕| 日韩人妻精品一区2区三区| 熟妇人妻不卡中文字幕| 欧美另类一区| 国产男女超爽视频在线观看| 一边摸一边做爽爽视频免费| 一级毛片 在线播放| 亚洲国产精品999| 欧美乱码精品一区二区三区| 大香蕉久久成人网| 国产精品麻豆人妻色哟哟久久| 精品一区二区三区av网在线观看 | 大片免费播放器 马上看| 色精品久久人妻99蜜桃| 亚洲伊人色综图| √禁漫天堂资源中文www| 亚洲成色77777| 秋霞在线观看毛片| 成人国产av品久久久| 国产一区二区 视频在线| 在线天堂最新版资源| 精品国产超薄肉色丝袜足j| 久久久久视频综合| 国产在线视频一区二区| 欧美日韩av久久| 日韩不卡一区二区三区视频在线| 久久毛片免费看一区二区三区| 99九九在线精品视频| 一区二区三区精品91| 国产一区有黄有色的免费视频| 天美传媒精品一区二区| 欧美在线一区亚洲| 亚洲图色成人| 成人影院久久| av.在线天堂| 飞空精品影院首页| 夫妻午夜视频| 精品国产一区二区三区久久久樱花| 韩国av在线不卡| 各种免费的搞黄视频| 国产在线视频一区二区| 老司机在亚洲福利影院| 日韩一卡2卡3卡4卡2021年| 欧美老熟妇乱子伦牲交| 日本欧美国产在线视频| 久久精品久久久久久噜噜老黄| 国产午夜精品一二区理论片| 亚洲精品国产av成人精品| 亚洲天堂av无毛| 日韩一区二区视频免费看| 精品国产国语对白av| 91国产中文字幕| 日韩视频在线欧美| 看免费av毛片| 日韩av在线免费看完整版不卡| 精品亚洲成a人片在线观看| 久久综合国产亚洲精品| 男女下面插进去视频免费观看| 韩国精品一区二区三区| 国产精品女同一区二区软件| 永久免费av网站大全| av线在线观看网站| 久久综合国产亚洲精品| 交换朋友夫妻互换小说| 亚洲伊人色综图| 人人妻人人添人人爽欧美一区卜| 欧美精品人与动牲交sv欧美| 亚洲少妇的诱惑av| 亚洲精品久久午夜乱码| 亚洲国产欧美一区二区综合| 国产亚洲精品第一综合不卡| 亚洲色图综合在线观看| 婷婷色麻豆天堂久久| 涩涩av久久男人的天堂| av一本久久久久| 精品酒店卫生间| 老司机亚洲免费影院| 久久久久精品人妻al黑| 观看av在线不卡| 亚洲av成人不卡在线观看播放网 | 国产欧美日韩一区二区三区在线| 99热网站在线观看|