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

    基于Scrapy的水利數(shù)據(jù)爬蟲(chóng)設(shè)計(jì)與實(shí)現(xiàn)

    2020-07-09 21:53:20游攀利楊琳喻淼
    水利水電快報(bào) 2020年5期
    關(guān)鍵詞:網(wǎng)絡(luò)爬蟲(chóng)數(shù)據(jù)采集

    游攀利 楊琳 喻淼

    摘要:為解決目前各級(jí)水利部門(mén)數(shù)據(jù)共享能力弱、數(shù)據(jù)格式不統(tǒng)一的問(wèn)題,建立了一種水利數(shù)據(jù)整合方法。針對(duì)互聯(lián)網(wǎng)公開(kāi)的水利數(shù)據(jù)特點(diǎn),結(jié)合水利行業(yè)標(biāo)準(zhǔn)規(guī)范,介紹了基于Scrapy框架設(shè)計(jì)和開(kāi)發(fā)的水利數(shù)據(jù)爬蟲(chóng),并規(guī)范化存儲(chǔ)數(shù)據(jù)。在總結(jié)各種水利數(shù)據(jù)的獲取和解析原理及方法基礎(chǔ)上,提出了使用Scra-pyd部署爬蟲(chóng)和SpiderKeeper管理爬蟲(chóng)的方法,并成功應(yīng)用于長(zhǎng)江大數(shù)據(jù)中心的建設(shè),為水雨情預(yù)警、防汛抗旱、應(yīng)急管理提供了重要支持。

    關(guān)鍵詞:水利數(shù)據(jù);網(wǎng)絡(luò)爬蟲(chóng);Scrapy;數(shù)據(jù)采集

    中圖法分類(lèi)號(hào):TP391

    文獻(xiàn)標(biāo)志碼:A

    DOI:10. 15974/j .cnki.slsdkb.2020.05.014

    水利信息化經(jīng)過(guò)多年的發(fā)展,全國(guó)各水利廳局及流域機(jī)構(gòu)積累了大量的水利數(shù)據(jù),包括水雨情數(shù)據(jù)、水質(zhì)數(shù)據(jù)、水澇災(zāi)害數(shù)據(jù)、遙感數(shù)據(jù)、防汛抗旱知識(shí)和應(yīng)急管理知識(shí)等,這些數(shù)據(jù)可為防汛抗旱決策支持、水利工程建設(shè)、水文水資源研究等提供重要支持[1]。然而,水利數(shù)據(jù)分散在各水利機(jī)構(gòu)內(nèi),結(jié)構(gòu)復(fù)雜、種類(lèi)繁多,即便是同一種類(lèi)的業(yè)務(wù)數(shù)據(jù),數(shù)據(jù)結(jié)構(gòu)也有所差異,阻礙了水利數(shù)據(jù)的開(kāi)發(fā)、利用與研究。因此,本文從各水利政務(wù)網(wǎng)站的公開(kāi)數(shù)據(jù)人手,結(jié)合水利部發(fā)布的數(shù)據(jù)庫(kù)規(guī)范設(shè)計(jì)數(shù)據(jù)庫(kù)表,以水雨情數(shù)據(jù)為例,基于爬蟲(chóng)框架Scrapy設(shè)計(jì)和開(kāi)發(fā)水利爬蟲(chóng),著重介紹了各種水雨情網(wǎng)頁(yè)的獲取和解析過(guò)程,包括Scrapy Selector CSS選擇器解析HTML結(jié)構(gòu)數(shù)據(jù)、正則表達(dá)式解析JavaScript數(shù)據(jù)、獲取和解析Ajax數(shù)據(jù)、Selenium結(jié)合瀏覽器驅(qū)動(dòng)解析網(wǎng)頁(yè)加密數(shù)據(jù)等;并對(duì)爬取的數(shù)據(jù)進(jìn)行規(guī)范化存儲(chǔ),最后使用SpiderKeeper對(duì)分布于不同服務(wù)器的爬蟲(chóng)進(jìn)行統(tǒng)一管理。

    1 網(wǎng)絡(luò)爬蟲(chóng)

    網(wǎng)絡(luò)爬蟲(chóng)( web crawler),又稱(chēng)作網(wǎng)絡(luò)機(jī)器人(web robot)或網(wǎng)絡(luò)蜘蛛(web spider),是以一定的規(guī)則自動(dòng)抓取互聯(lián)網(wǎng)資源的計(jì)算機(jī)應(yīng)用程序[2]。網(wǎng)絡(luò)爬蟲(chóng)通常由調(diào)度器( scheduler)、下載器(download-er)、解析器(parser)、待爬行隊(duì)列(URL queue)4個(gè)部分組成,如圖1所示[3-4]。調(diào)度器首先將設(shè)定的初始URL傳遞給下載器,下載器從互聯(lián)網(wǎng)下載信息并傳給解析器,解析器根據(jù)既定規(guī)則提取信息和待爬取的URL,提取的信息經(jīng)處理后存人數(shù)據(jù)庫(kù)或文件,URL經(jīng)去重后傳輸給待爬行隊(duì)列.等待調(diào)度器調(diào)用,循環(huán)往復(fù)[5-7]。

    網(wǎng)絡(luò)爬蟲(chóng)分為通用( General Purpose)網(wǎng)絡(luò)爬蟲(chóng)和聚焦(Focused)網(wǎng)絡(luò)爬蟲(chóng)[8]。通用網(wǎng)絡(luò)爬蟲(chóng)又稱(chēng)作全網(wǎng)爬蟲(chóng),爬取整個(gè)互聯(lián)網(wǎng)資源以供搜索引擎建立索引;聚焦網(wǎng)絡(luò)爬蟲(chóng)又稱(chēng)作主題網(wǎng)絡(luò)爬蟲(chóng),爬取用戶需要的特定主題網(wǎng)頁(yè)(經(jīng)相關(guān)網(wǎng)站許可)收集數(shù)據(jù),并在標(biāo)注出處的前提下加以數(shù)據(jù)分析、用于建模及展示。水雨情爬蟲(chóng)為聚焦網(wǎng)絡(luò)爬蟲(chóng),目標(biāo)是爬取各級(jí)水利部門(mén)網(wǎng)站公開(kāi)的水雨情信息。

    網(wǎng)絡(luò)爬蟲(chóng)技術(shù)伴隨著搜索引擎共同發(fā)展,在網(wǎng)絡(luò)爬蟲(chóng)發(fā)展初期,開(kāi)發(fā)者需考慮很多底層功能的實(shí)現(xiàn),例如,模擬HTTP請(qǐng)求、下載網(wǎng)頁(yè)、解析數(shù)據(jù)、隊(duì)列管理等。搜索引擎面對(duì)的問(wèn)題日趨復(fù)雜,促使爬蟲(chóng)程序的編寫(xiě)難度越來(lái)越大。為了提高爬蟲(chóng)的編寫(xiě)效率,逐漸出現(xiàn)了網(wǎng)絡(luò)請(qǐng)求庫(kù)urllib、urllib2、re-quests等和解析庫(kù)Xpath、Beautiful Soup、pyquery等,進(jìn)而抽象出模塊的概念,有了爬蟲(chóng)框架的雛形。此時(shí),開(kāi)發(fā)者雖不需考慮這些常用模塊的實(shí)現(xiàn),但仍需考慮爬蟲(chóng)的流程、異常處理及任務(wù)調(diào)度等。對(duì)于今后進(jìn)一步出現(xiàn)的pyspider、scrapy等爬蟲(chóng)框架,開(kāi)發(fā)者只需考慮爬蟲(chóng)的業(yè)務(wù)邏輯部分。而且,pyspi-der、scrapy的可配置性更高,異常處理能力更強(qiáng),故水利數(shù)據(jù)采集系統(tǒng)采用scrapy作為爬蟲(chóng)框架。

    2 Scrapy框架

    Scrapy是使用Python語(yǔ)言實(shí)現(xiàn)的一種爬蟲(chóng)框架,它將網(wǎng)絡(luò)爬蟲(chóng)工程化、模塊化,幫助開(kāi)發(fā)人員方便地構(gòu)建網(wǎng)絡(luò)請(qǐng)求、解析網(wǎng)頁(yè)響應(yīng),從而快速實(shí)現(xiàn)特定業(yè)務(wù)的爬蟲(chóng)[8-9]。Scrapy基于Twisted異步網(wǎng)絡(luò)庫(kù)處理網(wǎng)絡(luò)通訊,實(shí)現(xiàn)了分布式爬取。

    2.1 Scrapy組件

    Scrapy爬蟲(chóng)框架結(jié)構(gòu)如圖2所示[10],包括以下6個(gè)主要組件:

    (1)Scrapy引擎(engine)。負(fù)責(zé)控制數(shù)據(jù)在組件中流動(dòng),并在相應(yīng)動(dòng)作發(fā)生時(shí)觸發(fā)事件,是整個(gè)框架的核心。

    (2)調(diào)度器。從Scrapy引擎接受請(qǐng)求,并將其加入到隊(duì)列中,以便之后請(qǐng)求它們時(shí)提供。

    (3)下載器。接受請(qǐng)求,負(fù)責(zé)獲取數(shù)據(jù)并提供給引擎,而后提供給爬蟲(chóng)。

    (4)爬蟲(chóng)。用戶編寫(xiě)的針對(duì)特定業(yè)務(wù)的爬蟲(chóng)程序,定義了初始請(qǐng)求網(wǎng)址、網(wǎng)頁(yè)的爬取邏輯和解析規(guī)則,用于發(fā)起初始請(qǐng)求和解析返回的數(shù)據(jù)并提取項(xiàng)目(Item,定義了爬取結(jié)果的數(shù)據(jù)結(jié)構(gòu),可對(duì)應(yīng)web開(kāi)發(fā)中的實(shí)體類(lèi))和生成新的請(qǐng)求,每個(gè)爬蟲(chóng)負(fù)責(zé)處理某個(gè)特定或一些網(wǎng)站。

    (5)項(xiàng)目管道(Item Pipeline)。負(fù)責(zé)處理爬蟲(chóng)提取出來(lái)的項(xiàng)目,典型的處理有數(shù)據(jù)清洗、驗(yàn)證數(shù)據(jù)完整性、數(shù)據(jù)重復(fù)及數(shù)據(jù)持久化(例如按指定格式保存到文件或存取到數(shù)據(jù)庫(kù)中)。

    (6)中間件(middleware)。包括下載器中間件( downloader middleware)和爬蟲(chóng)中間件(spider mid-dleware)。下載器中間件是在引擎與下載器之間的特定鉤子( specific hook),主要處理引擎發(fā)過(guò)來(lái)的請(qǐng)求,用戶可編寫(xiě)程序擴(kuò)展Scrapy的功能,以自定義的方式協(xié)調(diào)下載器的工作;爬蟲(chóng)中間件是在引擎與爬蟲(chóng)之間的特定鉤子,處理爬蟲(chóng)的輸入響應(yīng)(response)和輸出條目及請(qǐng)求。同下載器中間件一樣,用戶可擴(kuò)展Scrapy功能,以協(xié)調(diào)爬蟲(chóng)工作。

    2.2 Scrapy數(shù)據(jù)流

    Scrapy的數(shù)據(jù)流向是由引擎控制的,數(shù)據(jù)流動(dòng)的過(guò)程如下:

    (1)引擎找到處理該網(wǎng)站的爬蟲(chóng),向爬蟲(chóng)請(qǐng)求初始要爬取的URL,根據(jù)URL解析域名。

    (2)引擎從爬蟲(chóng)中獲取到第一個(gè)要爬取的URL,并通過(guò)調(diào)度器以請(qǐng)求的形式調(diào)度。

    (3)引擎向調(diào)度器請(qǐng)求下一個(gè)要爬取的URL。

    (4)調(diào)度器返回下一個(gè)要爬取的URL給引擎,引擎將URL通過(guò)下載器中間件轉(zhuǎn)發(fā)給下載器。

    (5)-旦頁(yè)面下載完畢,下載器生成該頁(yè)面的響應(yīng),并將其通過(guò)下載器中間件發(fā)送給引擎。

    (6)引擎從下載器處接收到響應(yīng),并通過(guò)爬蟲(chóng)中間件發(fā)送給爬蟲(chóng)處理。

    (7)爬蟲(chóng)處理響應(yīng),解析數(shù)據(jù)并封裝成條目,返回條目及新的請(qǐng)求給引擎。

    (8)引擎將爬蟲(chóng)返回的條目給項(xiàng)目管道處理,將新的請(qǐng)求加入到調(diào)度器的待爬隊(duì)列中。

    (9)重復(fù)步驟(2)~(8),直到調(diào)度器中沒(méi)有請(qǐng)求,待爬隊(duì)列為空,或者滿足自定義的停止條件,引擎則關(guān)閉該網(wǎng)站,爬行結(jié)束。

    通過(guò)多個(gè)組件的分工協(xié)作、組件對(duì)異步處理的支持,Scrapy充分利用了帶寬,提高了數(shù)據(jù)爬取效率。

    3 水雨情爬蟲(chóng)設(shè)計(jì)

    3.1 網(wǎng)頁(yè)獲取

    爬蟲(chóng)設(shè)計(jì)的首要工作即是得到獲取目標(biāo)數(shù)據(jù)的網(wǎng)絡(luò)請(qǐng)求。訪問(wèn)水雨情網(wǎng)頁(yè),查看網(wǎng)頁(yè)的源代碼會(huì)發(fā)現(xiàn),其中可能根本不存在水雨情數(shù)據(jù),這是因?yàn)楝F(xiàn)在很多網(wǎng)頁(yè)是由JavaScript渲染出來(lái),原始的HTML代碼可能只是一個(gè)僅有水雨情表頭的表格。向網(wǎng)站發(fā)送一個(gè)HTTP請(qǐng)求,返回的就是網(wǎng)頁(yè)源代碼。綜合分析各級(jí)水利部門(mén)網(wǎng)站公開(kāi)的水雨情網(wǎng)頁(yè),存在以下幾種情況。

    (1)網(wǎng)頁(yè)源代碼中的HTML代碼包含目標(biāo)數(shù)據(jù),該網(wǎng)頁(yè)的URL就是獲取目標(biāo)數(shù)據(jù)的URL;

    (2)網(wǎng)頁(yè)源代碼中的JavaScript代碼包含目標(biāo)數(shù)據(jù),該網(wǎng)頁(yè)的URL就是獲取目標(biāo)數(shù)據(jù)的URL;

    (3)網(wǎng)頁(yè)源代碼不包含目標(biāo)數(shù)據(jù),通過(guò)Ajax加載數(shù)據(jù)渲染網(wǎng)頁(yè),Ajax請(qǐng)求的URL即是獲取目標(biāo)數(shù)據(jù)的URL;

    (4)網(wǎng)頁(yè)源代碼不包含目標(biāo)數(shù)據(jù),通過(guò)JavaS-cript算法生成數(shù)據(jù)渲染網(wǎng)頁(yè),該網(wǎng)頁(yè)的URL即是獲取目標(biāo)數(shù)據(jù)的URL;

    (5)網(wǎng)頁(yè)源代碼不包含目標(biāo)數(shù)據(jù),網(wǎng)頁(yè)數(shù)據(jù)被加密,該網(wǎng)頁(yè)的URL即是獲取目標(biāo)數(shù)據(jù)的URL;

    (6)網(wǎng)頁(yè)源代碼不包含目標(biāo)數(shù)據(jù),而是使用if-rame嵌入另一個(gè)HTML網(wǎng)頁(yè)展示數(shù)據(jù),這種情況下,為了確認(rèn)獲取目標(biāo)數(shù)據(jù)的URL,需再次分析,以確定是上述(1)~(5)中的哪種情況。

    3.2 數(shù)據(jù)解析

    確定獲取目標(biāo)數(shù)據(jù)的URL之后,使用Scrapy模擬HTTP請(qǐng)求,對(duì)返回的響應(yīng)數(shù)據(jù)進(jìn)行解析。根據(jù)響應(yīng)的不同,解析方式也不同。對(duì)于3.1節(jié)中的情況(l),需要解析的是HTML結(jié)構(gòu)數(shù)據(jù),使用Scrapy的Selector CSS選擇器進(jìn)行解析;對(duì)于情況(2),由于JavaScript數(shù)據(jù)不是結(jié)構(gòu)化的,通常使用正則表達(dá)式進(jìn)行解析;對(duì)于情況(3),需要解析的是JSON數(shù)據(jù);對(duì)于情況(4)和(5),通常JavaScript的算法規(guī)律并不容易找到,即使找到,花費(fèi)的時(shí)間代價(jià)太大,若網(wǎng)頁(yè)數(shù)據(jù)加密,分析難度更大,所以這兩種情況通常采用Selenium或PhantomjS來(lái)驅(qū)動(dòng)瀏覽器加載網(wǎng)頁(yè),直接獲得JavaScript渲染后的網(wǎng)頁(yè),做到“可見(jiàn)即可爬”,接下來(lái)解析HTML結(jié)構(gòu)數(shù)據(jù)即可,與(1)的解析方式相同[11]。對(duì)于情況(6),iframe嵌入網(wǎng)頁(yè)的數(shù)據(jù)解析,只需分析iframe嵌入的網(wǎng)頁(yè)源代碼即可,后續(xù)步驟與(1)~(5)相同。具體的數(shù)據(jù)解析如下。

    (1)HTML結(jié)構(gòu)數(shù)據(jù)解析。以重慶水利水務(wù)網(wǎng)“水文管理”模塊下的“今日八時(shí)水情”(URL為http: //slj .cq.gov.cn/swxx/jrbssq/Pages/Default.aspx)為例,如圖3所示。查看源代碼,發(fā)現(xiàn)目標(biāo)數(shù)據(jù)已包含在HTML代碼結(jié)構(gòu)中,可利用CSS選擇器進(jìn)行解析。例如使用Scrapy shell提取寸灘和武隆水文站的水位數(shù)據(jù),可分別使用如下代碼進(jìn)行提取,如圖4所示。

    需要注意的是,由于代表站占據(jù)了第2行的第1列,所以寸灘的水位數(shù)據(jù)在第2行的第5列,而武隆的水位數(shù)據(jù)在第4行的第4列。

    (2)JavaScript數(shù)據(jù)解析。以長(zhǎng)江水文網(wǎng)的“實(shí)時(shí)水情”(http://www.cjh.com.cn/)為例,如圖5所示。分析網(wǎng)頁(yè)的源代碼,目標(biāo)數(shù)據(jù)是通過(guò)標(biāo)簽嵌入的URL(http://www.cjh.com.cn/sqindex.html)加載的,分析此HTML的源代碼,發(fā)現(xiàn)目標(biāo)數(shù)據(jù)包含在Ja-vaScript代碼中(見(jiàn)圖6),其作為一個(gè)JSON字符串賦值給了一個(gè)JS變量,這種情況使用正則表達(dá)式獲取目標(biāo)數(shù)據(jù)最為方便,如圖7所示。

    (3)Ajax數(shù)據(jù)解析。以湖北省水利廳網(wǎng)站的“水旱災(zāi)害防御”模塊的“江河水情”欄目(http://113.57.190.228: 8001/web/Report/RiverReport)為例,該欄目展示了湖北省56個(gè)河道水文站當(dāng)天08:00的水位、流量信息,如圖8所示。目標(biāo)是從表格中解析出實(shí)時(shí)數(shù)據(jù)(水位、流量)和防洪指標(biāo)數(shù)據(jù)(設(shè)防水位、警戒水位和歷史最高水位),查看江河水情網(wǎng)頁(yè)的源代碼發(fā)現(xiàn)表格中并沒(méi)有相關(guān)數(shù)據(jù)。打開(kāi)Chrome開(kāi)發(fā)工具.選擇Network選項(xiàng)卡,通過(guò)XHR篩選出Ajax請(qǐng)求,選定請(qǐng)求,點(diǎn)擊Headers可查看請(qǐng)求和響應(yīng)的頭部詳情。分析可知,請(qǐng)求類(lèi)型為GET,請(qǐng)求URL為http://113.57.190.228: 8001/Web/Report/GetRiverData? date=2019-11-11+08%3AOO,請(qǐng)求的參數(shù)只有1個(gè)date,參數(shù)值經(jīng)過(guò)了HTML URL編碼,表示的是ASCII字符“:”,所以真實(shí)的參數(shù)值為:2019-10-30 08:00。據(jù)此,可以使用Scrapy模擬Ajax請(qǐng)求,如需獲取歷史數(shù)據(jù),只需要按照一定規(guī)則改變date參數(shù)即可。點(diǎn)擊Preview可預(yù)覽返回的JSON數(shù)據(jù),如圖9所示,對(duì)照網(wǎng)頁(yè)數(shù)據(jù)可知每個(gè)字段的業(yè)務(wù)意義。

    (4)加密網(wǎng)頁(yè)數(shù)據(jù)解析。以江蘇水情信息(http://221.226.28.67:88/jsswxxSSI/Web/Default.ht-ml? m=2)為例,使用如圖10所示代碼即可獲取表格數(shù)據(jù)。后續(xù)使用HTML結(jié)構(gòu)數(shù)據(jù)解析方法即可,不再贅述。

    3.3 爬取對(duì)象定義

    Scrapy的條目類(lèi)用來(lái)定義爬取的對(duì)象。綜合分析各級(jí)水利部門(mén)網(wǎng)站公開(kāi)的河道水情信息,并結(jié)合水利部發(fā)布的SL323-2001《實(shí)時(shí)水雨情數(shù)據(jù)庫(kù)表結(jié)構(gòu)與標(biāo)識(shí)符》數(shù)據(jù)庫(kù)規(guī)范,對(duì)于河道水文站爬蟲(chóng),用StRiverltem定義爬取對(duì)象,需定義的屬性有:測(cè)站編碼、時(shí)間、測(cè)站名稱(chēng)、河流名稱(chēng)、水位、流量、設(shè)防水位、警戒水位、保證水位和歷史最高水位。

    3.4 數(shù)據(jù)存儲(chǔ)

    爬蟲(chóng)將解析的數(shù)據(jù)封裝成條目之后交給項(xiàng)目管道,進(jìn)行數(shù)據(jù)持久化。數(shù)據(jù)持久化的方式有多種,可直接本地化存儲(chǔ)為文件,如TXT、CSV、JSON等,也可保存至Oracle、MySQL等關(guān)系型數(shù)據(jù)庫(kù)或者M(jìn)ongoDB、Redis等非關(guān)系型數(shù)據(jù)庫(kù)。本文采用MySQL,根據(jù)爬蟲(chóng)對(duì)象StRiverltem設(shè)計(jì)河道水情數(shù)據(jù)表結(jié)構(gòu),如表1所示。

    爬取的數(shù)據(jù)保存至MySQL數(shù)據(jù)庫(kù),結(jié)果如圖11所示。

    3.5 異常處理

    爬蟲(chóng)執(zhí)行一段時(shí)間后,可能會(huì)出現(xiàn)“403 Forbid-den”的錯(cuò)誤,這是因?yàn)镮P訪問(wèn)頻率過(guò)高,網(wǎng)站采取了反爬措施,檢測(cè)到某個(gè)IP單位時(shí)間內(nèi)訪問(wèn)次數(shù)超過(guò)某個(gè)設(shè)定的閾值,就會(huì)拒絕服務(wù)。解決辦法包括使用代理和降低訪問(wèn)頻率,鑒于水利數(shù)據(jù)每天更新數(shù)量不多,可采用降低訪問(wèn)頻率辦法采集歷史數(shù)據(jù),在采集一個(gè)時(shí)間段的數(shù)據(jù)后,程序停頓1-2 s。如果采集的是實(shí)時(shí)數(shù)據(jù),水文網(wǎng)站每天更新的數(shù)據(jù)量并不多,通常不會(huì)出現(xiàn)訪問(wèn)頻率過(guò)高的問(wèn)題。

    網(wǎng)站反爬的措施還包括登錄、驗(yàn)證碼和返回動(dòng)態(tài)網(wǎng)頁(yè)等。水雨情等水利數(shù)據(jù)通常是公開(kāi)的,無(wú)需登陸和輸入驗(yàn)證碼即可訪問(wèn)。如果確有登錄和驗(yàn)證碼的要求,需在爬蟲(chóng)業(yè)務(wù)邏輯內(nèi)增加登陸模塊,并使用圖象識(shí)別或接入打碼平臺(tái)進(jìn)行驗(yàn)證碼識(shí)別,成功登陸后獲取cookies信息再對(duì)數(shù)據(jù)進(jìn)行處理。若服務(wù)器返回的是動(dòng)態(tài)網(wǎng)頁(yè),使用前述Selenium進(jìn)行處理,不再贅述。

    4 系統(tǒng)部署

    在完成Scrapy爬蟲(chóng)程序的編寫(xiě)和測(cè)試之后,將其部署在Scrapyd服務(wù)器中。Scrapyd是由Scrapy官方提供的用于部署Scrapy爬蟲(chóng)的服務(wù),用戶可通過(guò)它提供的HTTP JSON API控制爬蟲(chóng)。Scrapyd本身提供了一個(gè)簡(jiǎn)單的UI界面,用戶使用任何1臺(tái)能連接到Scrapyd服務(wù)器的計(jì)算機(jī)即可上傳、啟動(dòng)、停止爬蟲(chóng)并查看運(yùn)行日志,而不必登錄到Scrapyd服務(wù)器。但是,這個(gè)界面過(guò)于簡(jiǎn)單,且1臺(tái)Scrapyd服務(wù)器僅有1個(gè)界面,多臺(tái)即有多個(gè)界面,不能進(jìn)行統(tǒng)一管理。

    水利數(shù)據(jù)涉及主題非常多,對(duì)應(yīng)的爬蟲(chóng)數(shù)量很大。為了提高爬蟲(chóng)的性能,通常將不同業(yè)務(wù)的爬蟲(chóng)部署在不同的Scrapyd服務(wù)器上。為了實(shí)現(xiàn)對(duì)爬蟲(chóng)的統(tǒng)一管理,要使用SpiderKeeper和Scrapyweb,兩者均可實(shí)現(xiàn)一鍵部署和定時(shí)任務(wù),都是對(duì)Scrapyd提供的接口的二次封裝。SpiderKeeper是一款可擴(kuò)展的爬蟲(chóng)服務(wù)可視化管理工具,可快速向多個(gè)Scrapyd服務(wù)器部署爬蟲(chóng),監(jiān)控爬蟲(chóng)執(zhí)行情況,通過(guò)儀表盤(pán)管理爬蟲(chóng),并定制運(yùn)行策略。Scrapyweb比SpiderKeep-er功能更豐富(例如異常情況郵件通知),但穩(wěn)定性不及SpiderKeeper,SpiderKeeper可以應(yīng)付大規(guī)模的爬蟲(chóng)集群。本文采用SpiderKeeper對(duì)爬蟲(chóng)進(jìn)行統(tǒng)一管理。

    使用SpiderKeeper設(shè)置爬蟲(chóng)分兩步,首先創(chuàng)建一個(gè)條目,然后添加1個(gè)定時(shí)任務(wù),如圖12所示。1個(gè)爬蟲(chóng)對(duì)應(yīng)1個(gè)定時(shí)任務(wù),定時(shí)策略又根據(jù)業(yè)務(wù)數(shù)據(jù)的發(fā)布情況決定,如圖13所示。完成對(duì)所有爬蟲(chóng)的設(shè)置之后,可對(duì)爬蟲(chóng)進(jìn)行關(guān)閉、運(yùn)行一次和刪除操作,如圖14所示。

    5 結(jié)語(yǔ)

    本研究基于Scrapy的水利數(shù)據(jù)爬取,以水雨情為例,將各水利廳局及流域機(jī)構(gòu)公開(kāi)的水雨情數(shù)據(jù)解析分為HTML結(jié)構(gòu)數(shù)據(jù)、JavaScript數(shù)據(jù)、Ajax數(shù)據(jù)和加密數(shù)據(jù)4類(lèi)。詳細(xì)介紹了解析方法和原理,并將提取到的水雨情數(shù)據(jù)進(jìn)行規(guī)范化存儲(chǔ),可為水利一張圖和使用大數(shù)據(jù)方法研究水雨情預(yù)警、防汛抗旱、應(yīng)急管理提供數(shù)據(jù)支持。

    參考文獻(xiàn):

    [1] 張馳恒一.基于多數(shù)據(jù)源的水利數(shù)據(jù)獲取及大數(shù)據(jù)服務(wù)[D].西安:西安理工大學(xué),2018.

    [2]Castillo C.Effective web crawling[Jl. ACM SIGIR Fo- rum, 2005 .39(1): 55-56.

    [3]劉金紅,陸余良.主題網(wǎng)絡(luò)爬蟲(chóng)研究綜述[J].計(jì)算機(jī)應(yīng)用研究,2007,24(10):26-29.

    [4]周德懋,李舟軍.高性能網(wǎng)絡(luò)爬蟲(chóng):研究綜述[J].計(jì)算機(jī)科學(xué),2009,36(8):26-29.

    [5]于娟,劉強(qiáng).主題網(wǎng)絡(luò)爬蟲(chóng)研究綜述[J]計(jì)算機(jī)工程與科學(xué),2015,37(2):231-237.

    [6]Rungsawang A,Angkawattanawit N.Learnable Lopic-spe-cific web crawler[J].Journal of Network&Computer Ap-plications, 2005, 28(2): 97-114.

    [7] Kozanidis L.An Ontology-Based Focused Crawler[Cl//Intemational Conference on Natural Language and Infor-mation Systems: Applications of Natural Language to In-formation Systems. Springer-Verlag, 2008: 376-379.

    [8]李喬宇,尚明華,王富軍,等.基于Scrapy的農(nóng)業(yè)網(wǎng)絡(luò)數(shù)據(jù)爬取[J].山東農(nóng)業(yè)科學(xué)報(bào),2018,50(1):142-147.

    [9] 馬聯(lián)帥.基于Scrapy的分布式網(wǎng)絡(luò)新聞抓取系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].西安:西安電子科技大學(xué),2015.

    [10]

    Scrapy developers. Scrapy Architecture overview[DB/OL].

    https: //doc.scrapy.org/en/latest/topics/architecture. html, 2018。

    [11]杜彬.基于Selenium的定向網(wǎng)絡(luò)爬蟲(chóng)設(shè)計(jì)與實(shí)現(xiàn)[J]金融科技時(shí)代,2016(7):35-39.

    (編輯:李慧)

    作者簡(jiǎn)介:游攀利,男,工程師,碩士,主要從水利信息化建設(shè)及軟件開(kāi)發(fā)工作。E-mail: youpanli@cjwsjy.com.cn

    猜你喜歡
    網(wǎng)絡(luò)爬蟲(chóng)數(shù)據(jù)采集
    煉鐵廠鐵量網(wǎng)頁(yè)數(shù)據(jù)獲取系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
    CS5463在植栽用電子鎮(zhèn)流器老化監(jiān)控系統(tǒng)中的應(yīng)用
    大數(shù)據(jù)時(shí)代高校數(shù)據(jù)管理的思考
    科技視界(2016年18期)2016-11-03 22:51:40
    鐵路客流時(shí)空分布研究綜述
    基于廣播模式的數(shù)據(jù)實(shí)時(shí)采集與處理系統(tǒng)
    軟件工程(2016年8期)2016-10-25 15:54:18
    通用Web表單數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
    軟件工程(2016年8期)2016-10-25 15:52:53
    基于開(kāi)源系統(tǒng)的綜合業(yè)務(wù)數(shù)據(jù)采集系統(tǒng)的開(kāi)發(fā)研究
    基于社會(huì)網(wǎng)絡(luò)分析的權(quán)威網(wǎng)頁(yè)挖掘研究
    主題搜索引擎中網(wǎng)絡(luò)爬蟲(chóng)的實(shí)現(xiàn)研究
    淺析如何應(yīng)對(duì)網(wǎng)絡(luò)爬蟲(chóng)流量
    久久久a久久爽久久v久久| 亚洲三级黄色毛片| 真实男女啪啪啪动态图| 欧美人与善性xxx| 不卡视频在线观看欧美| 白带黄色成豆腐渣| 亚洲性久久影院| 亚洲国产精品国产精品| 成人无遮挡网站| 搡女人真爽免费视频火全软件| 小说图片视频综合网站| 成人午夜精彩视频在线观看| 一本精品99久久精品77| 国产av一区在线观看免费| 国产久久久一区二区三区| 国产综合懂色| 成人午夜精彩视频在线观看| 男女视频在线观看网站免费| 搡女人真爽免费视频火全软件| 高清午夜精品一区二区三区 | 久久久午夜欧美精品| 午夜福利在线在线| 亚洲精品久久久久久婷婷小说 | 国产免费男女视频| 久久精品国产亚洲av涩爱 | 国产极品精品免费视频能看的| 一级av片app| 国产精品久久电影中文字幕| 国产精品永久免费网站| 一本精品99久久精品77| 免费av观看视频| 看免费成人av毛片| 精品熟女少妇av免费看| 日日啪夜夜撸| 亚洲精品成人久久久久久| 亚洲成人精品中文字幕电影| 亚洲精品成人久久久久久| www.色视频.com| 97人妻精品一区二区三区麻豆| 欧美日韩精品成人综合77777| 日韩欧美一区二区三区在线观看| 欧美一区二区国产精品久久精品| 国产成人a∨麻豆精品| 久久久久九九精品影院| 人妻少妇偷人精品九色| 麻豆国产av国片精品| 岛国在线免费视频观看| 黄片wwwwww| 成人鲁丝片一二三区免费| a级毛色黄片| 我要看日韩黄色一级片| 狠狠狠狠99中文字幕| 精品无人区乱码1区二区| 国产在视频线在精品| 成人高潮视频无遮挡免费网站| 成人毛片a级毛片在线播放| 久久久久久久久大av| 国产国拍精品亚洲av在线观看| 欧美性猛交黑人性爽| 一夜夜www| 99久久精品国产国产毛片| 人妻久久中文字幕网| 国产伦理片在线播放av一区 | 91精品一卡2卡3卡4卡| 99热精品在线国产| 亚洲精华国产精华液的使用体验 | 免费大片18禁| 色综合亚洲欧美另类图片| 在线观看一区二区三区| 看非洲黑人一级黄片| 日日摸夜夜添夜夜添av毛片| 成人三级黄色视频| 村上凉子中文字幕在线| 色综合亚洲欧美另类图片| 又粗又硬又长又爽又黄的视频 | 国国产精品蜜臀av免费| 夜夜爽天天搞| 男插女下体视频免费在线播放| 欧美激情在线99| 99riav亚洲国产免费| 男人和女人高潮做爰伦理| 熟女人妻精品中文字幕| 免费搜索国产男女视频| 国产精品av视频在线免费观看| 国内精品宾馆在线| 亚洲婷婷狠狠爱综合网| 午夜老司机福利剧场| 春色校园在线视频观看| 麻豆国产97在线/欧美| 亚洲欧美成人综合另类久久久 | 精品久久久噜噜| 成人性生交大片免费视频hd| 嘟嘟电影网在线观看| 99热这里只有是精品在线观看| 国产成人aa在线观看| 高清在线视频一区二区三区 | 久久久a久久爽久久v久久| 伦理电影大哥的女人| 亚洲欧美精品专区久久| 嫩草影院精品99| av女优亚洲男人天堂| 亚洲欧美日韩高清在线视频| 在线观看66精品国产| 男女做爰动态图高潮gif福利片| 日日干狠狠操夜夜爽| 亚洲一区高清亚洲精品| 成人综合一区亚洲| 波多野结衣巨乳人妻| 亚洲性久久影院| 国产高清三级在线| 久久久久久久午夜电影| 午夜a级毛片| 欧美三级亚洲精品| 神马国产精品三级电影在线观看| 色哟哟·www| 一边摸一边抽搐一进一小说| 精品久久久久久成人av| 黄色日韩在线| 精品人妻视频免费看| 亚洲一级一片aⅴ在线观看| 中文精品一卡2卡3卡4更新| 成人特级av手机在线观看| 嫩草影院精品99| 午夜激情福利司机影院| 亚洲精华国产精华液的使用体验 | 一区二区三区四区激情视频 | 午夜福利在线观看免费完整高清在 | 热99re8久久精品国产| 欧洲精品卡2卡3卡4卡5卡区| 91狼人影院| 免费观看在线日韩| 久久国产乱子免费精品| 亚洲一级一片aⅴ在线观看| 成人特级av手机在线观看| 欧美成人一区二区免费高清观看| 免费看日本二区| 99热全是精品| 别揉我奶头 嗯啊视频| 亚洲图色成人| 一级毛片aaaaaa免费看小| 九九在线视频观看精品| 成人亚洲欧美一区二区av| 只有这里有精品99| 又粗又硬又长又爽又黄的视频 | 最后的刺客免费高清国语| а√天堂www在线а√下载| 在现免费观看毛片| 久久精品国产99精品国产亚洲性色| 精品久久久噜噜| 亚洲av中文字字幕乱码综合| 精品免费久久久久久久清纯| 亚洲欧美精品自产自拍| 3wmmmm亚洲av在线观看| 有码 亚洲区| 18禁在线播放成人免费| 色播亚洲综合网| 成人亚洲精品av一区二区| 日韩欧美在线乱码| 欧美日韩一区二区视频在线观看视频在线 | 中文字幕制服av| a级一级毛片免费在线观看| 日本成人三级电影网站| 日产精品乱码卡一卡2卡三| 搡女人真爽免费视频火全软件| 国产精品爽爽va在线观看网站| av免费观看日本| 老师上课跳d突然被开到最大视频| 国产色爽女视频免费观看| 亚洲,欧美,日韩| 1000部很黄的大片| 国产精品一及| 两个人视频免费观看高清| 一本一本综合久久| 能在线免费观看的黄片| 日本黄色片子视频| 国产麻豆成人av免费视频| 亚洲国产色片| 亚洲三级黄色毛片| 99久久九九国产精品国产免费| 国产精品无大码| 一级二级三级毛片免费看| eeuss影院久久| 亚洲av免费在线观看| 欧美成人一区二区免费高清观看| 久久精品国产自在天天线| 欧美性猛交黑人性爽| 国产成人91sexporn| 亚洲精品日韩在线中文字幕 | 免费搜索国产男女视频| 在线播放国产精品三级| 国产精品一区二区性色av| 欧美一区二区国产精品久久精品| 热99re8久久精品国产| 啦啦啦韩国在线观看视频| 国产亚洲精品av在线| ponron亚洲| 91久久精品国产一区二区三区| 热99re8久久精品国产| 中文字幕久久专区| 看黄色毛片网站| 午夜视频国产福利| 天天一区二区日本电影三级| 久久久久久久久久久免费av| av天堂在线播放| 国国产精品蜜臀av免费| 国产人妻一区二区三区在| 欧美极品一区二区三区四区| 99热6这里只有精品| 国产亚洲精品av在线| 少妇被粗大猛烈的视频| 日韩高清综合在线| 国产av麻豆久久久久久久| 国产av在哪里看| 91久久精品国产一区二区成人| 亚洲av不卡在线观看| 色综合色国产| 亚洲美女视频黄频| 国产黄片视频在线免费观看| 又粗又硬又长又爽又黄的视频 | 欧美区成人在线视频| 日韩人妻高清精品专区| 亚洲美女视频黄频| 亚洲欧美日韩卡通动漫| 国产真实乱freesex| 国产精品久久久久久久久免| 最近最新中文字幕大全电影3| 国产精品国产高清国产av| 中文欧美无线码| 国产一区亚洲一区在线观看| 久久6这里有精品| 简卡轻食公司| 国产成人精品一,二区 | 亚洲成人中文字幕在线播放| 久久亚洲精品不卡| 国产视频首页在线观看| 国产高清有码在线观看视频| 国产成人aa在线观看| 美女被艹到高潮喷水动态| 伦理电影大哥的女人| 蜜臀久久99精品久久宅男| 亚洲熟妇中文字幕五十中出| 在现免费观看毛片| 特大巨黑吊av在线直播| 国产精品99久久久久久久久| 男的添女的下面高潮视频| 精品午夜福利在线看| 亚洲精品影视一区二区三区av| 免费在线观看成人毛片| 中文字幕免费在线视频6| 国产探花极品一区二区| 亚洲精品亚洲一区二区| 久久久精品94久久精品| 欧美色欧美亚洲另类二区| 久久亚洲国产成人精品v| 久久欧美精品欧美久久欧美| 国产一区二区三区在线臀色熟女| 国产视频内射| 久久久久免费精品人妻一区二区| 成人三级黄色视频| 两个人视频免费观看高清| 国产精品伦人一区二区| 国产色婷婷99| 禁无遮挡网站| 日韩欧美精品免费久久| 国产成人精品一,二区 | 日本熟妇午夜| 亚洲国产精品sss在线观看| 欧美xxxx黑人xx丫x性爽| 国产精品野战在线观看| www日本黄色视频网| 99riav亚洲国产免费| 亚洲国产日韩欧美精品在线观看| 国产高清激情床上av| 狂野欧美白嫩少妇大欣赏| 国产精品国产高清国产av| 高清日韩中文字幕在线| 黄色视频,在线免费观看| 国内精品宾馆在线| 久久久久免费精品人妻一区二区| 少妇丰满av| 乱系列少妇在线播放| 免费看光身美女| 欧美日韩在线观看h| 成人午夜高清在线视频| 亚洲国产精品国产精品| 大香蕉久久网| 亚洲自拍偷在线| 色综合站精品国产| 国产精品美女特级片免费视频播放器| 国产色婷婷99| 国产成人精品久久久久久| 又粗又硬又长又爽又黄的视频 | 久久久久久久久久久丰满| www.av在线官网国产| 美女大奶头视频| 欧美性猛交╳xxx乱大交人| 日韩三级伦理在线观看| 日韩高清综合在线| 成人亚洲精品av一区二区| 国语自产精品视频在线第100页| 欧美日韩在线观看h| 午夜亚洲福利在线播放| 国产av一区在线观看免费| 日本-黄色视频高清免费观看| 一级毛片我不卡| 日本黄色片子视频| 十八禁国产超污无遮挡网站| 可以在线观看的亚洲视频| 中国美白少妇内射xxxbb| 成人亚洲欧美一区二区av| 久久99热这里只有精品18| 久久久色成人| 色5月婷婷丁香| 日韩欧美三级三区| a级毛色黄片| 久久精品国产亚洲av涩爱 | 69人妻影院| 观看免费一级毛片| 久久人人精品亚洲av| 99riav亚洲国产免费| 亚洲性久久影院| 亚洲国产欧美在线一区| 非洲黑人性xxxx精品又粗又长| 国内精品一区二区在线观看| 亚洲熟妇中文字幕五十中出| 美女 人体艺术 gogo| 天堂av国产一区二区熟女人妻| av在线蜜桃| 日韩三级伦理在线观看| 亚洲欧美日韩高清专用| 成人欧美大片| 日韩中字成人| 18禁裸乳无遮挡免费网站照片| 亚洲丝袜综合中文字幕| 日韩欧美精品v在线| 亚洲五月天丁香| 亚洲av成人精品一区久久| 免费看a级黄色片| 日本一二三区视频观看| 91精品国产九色| 日韩亚洲欧美综合| a级一级毛片免费在线观看| 少妇被粗大猛烈的视频| 国产精品久久久久久av不卡| 高清毛片免费看| 免费无遮挡裸体视频| 偷拍熟女少妇极品色| 亚洲丝袜综合中文字幕| 久久精品国产清高在天天线| 性欧美人与动物交配| 欧美一区二区精品小视频在线| 97热精品久久久久久| 搞女人的毛片| 少妇的逼好多水| 一卡2卡三卡四卡精品乱码亚洲| 国产女主播在线喷水免费视频网站 | 久久国内精品自在自线图片| 亚洲,欧美,日韩| 免费av毛片视频| 亚洲最大成人av| 干丝袜人妻中文字幕| 亚洲国产日韩欧美精品在线观看| 成人特级黄色片久久久久久久| 变态另类丝袜制服| 国产麻豆成人av免费视频| 久久鲁丝午夜福利片| 丰满人妻一区二区三区视频av| 久久人人爽人人片av| 黄色一级大片看看| 男人舔女人下体高潮全视频| 最近手机中文字幕大全| 欧美变态另类bdsm刘玥| 哪个播放器可以免费观看大片| 久久久久网色| 少妇高潮的动态图| a级毛片免费高清观看在线播放| 久久久久久久久久久丰满| 啦啦啦韩国在线观看视频| 赤兔流量卡办理| 99热网站在线观看| 久久久国产成人精品二区| 三级国产精品欧美在线观看| 欧美性猛交黑人性爽| 国产精品久久久久久久久免| 亚洲电影在线观看av| av卡一久久| 久久久久国产网址| 我要看日韩黄色一级片| 免费观看精品视频网站| 99久久中文字幕三级久久日本| 亚洲国产精品久久男人天堂| 亚洲真实伦在线观看| 日本欧美国产在线视频| 国产精品国产高清国产av| 波多野结衣高清作品| 久久精品国产鲁丝片午夜精品| 欧美bdsm另类| 色视频www国产| 男人舔奶头视频| 国产精品嫩草影院av在线观看| www.av在线官网国产| 国产在线精品亚洲第一网站| 欧美日韩综合久久久久久| 99九九线精品视频在线观看视频| 国产色爽女视频免费观看| 精华霜和精华液先用哪个| 简卡轻食公司| 欧美日韩综合久久久久久| 免费观看人在逋| 国产av麻豆久久久久久久| 国产高清激情床上av| 成年免费大片在线观看| 天堂中文最新版在线下载 | 深夜精品福利| 欧美高清性xxxxhd video| 天天躁夜夜躁狠狠久久av| 一本久久精品| 国产精品一区二区三区四区免费观看| 淫秽高清视频在线观看| 午夜精品一区二区三区免费看| 不卡一级毛片| 久久99热这里只有精品18| 久久精品夜色国产| 欧美+亚洲+日韩+国产| 国产精品久久久久久精品电影小说 | 中文亚洲av片在线观看爽| 日本免费a在线| 中国美白少妇内射xxxbb| 麻豆国产97在线/欧美| av黄色大香蕉| 日本与韩国留学比较| 欧美色视频一区免费| h日本视频在线播放| av在线天堂中文字幕| 国产成人精品一,二区 | 女的被弄到高潮叫床怎么办| 两个人的视频大全免费| 99国产精品一区二区蜜桃av| 国产亚洲精品av在线| 亚洲精品粉嫩美女一区| 又爽又黄a免费视频| 婷婷色综合大香蕉| 日本一本二区三区精品| 在线观看一区二区三区| 成人二区视频| 此物有八面人人有两片| 亚洲四区av| 成人永久免费在线观看视频| 亚洲在久久综合| 国产一区亚洲一区在线观看| 在线播放国产精品三级| 美女大奶头视频| 麻豆av噜噜一区二区三区| 寂寞人妻少妇视频99o| 国产精品久久久久久av不卡| 波野结衣二区三区在线| 在线a可以看的网站| 校园人妻丝袜中文字幕| 午夜免费男女啪啪视频观看| 长腿黑丝高跟| 高清在线视频一区二区三区 | 熟妇人妻久久中文字幕3abv| 我要看日韩黄色一级片| 国产伦精品一区二区三区四那| 国产精品人妻久久久影院| 国产大屁股一区二区在线视频| 搡女人真爽免费视频火全软件| 女的被弄到高潮叫床怎么办| 亚洲成人精品中文字幕电影| 青春草国产在线视频 | 狠狠狠狠99中文字幕| 国产老妇女一区| 国产精品美女特级片免费视频播放器| 亚洲精品成人久久久久久| 乱码一卡2卡4卡精品| 麻豆国产97在线/欧美| 久久久久久久久久成人| 高清毛片免费观看视频网站| 此物有八面人人有两片| 蜜桃久久精品国产亚洲av| 精品午夜福利在线看| 国产亚洲精品av在线| 天天躁日日操中文字幕| 欧美一区二区精品小视频在线| 久久久国产成人精品二区| 丰满的人妻完整版| 国产精品野战在线观看| 99国产精品一区二区蜜桃av| 国产精品一区二区性色av| 国产69精品久久久久777片| 国产蜜桃级精品一区二区三区| 精品国内亚洲2022精品成人| 国产黄片视频在线免费观看| 亚洲欧美精品自产自拍| 成人鲁丝片一二三区免费| www.色视频.com| 99久久精品一区二区三区| 亚洲av第一区精品v没综合| 亚洲中文字幕日韩| 国产亚洲欧美98| 99热网站在线观看| 97超碰精品成人国产| 六月丁香七月| 欧美+亚洲+日韩+国产| 欧美另类亚洲清纯唯美| 变态另类丝袜制服| 欧美激情久久久久久爽电影| 亚洲国产色片| 色噜噜av男人的天堂激情| 成人综合一区亚洲| 国产高清有码在线观看视频| 国产成人精品久久久久久| 欧美3d第一页| 亚洲av免费在线观看| 91狼人影院| 午夜免费激情av| 人人妻人人澡欧美一区二区| 日韩欧美国产在线观看| 噜噜噜噜噜久久久久久91| 免费av不卡在线播放| 亚洲成人久久爱视频| 午夜a级毛片| 日韩一区二区视频免费看| 69av精品久久久久久| 日韩欧美 国产精品| 亚洲av不卡在线观看| 国产成人精品婷婷| 久久精品国产亚洲av涩爱 | 村上凉子中文字幕在线| 真实男女啪啪啪动态图| 综合色丁香网| 三级国产精品欧美在线观看| 女的被弄到高潮叫床怎么办| 亚洲精品粉嫩美女一区| 国产精品一区二区三区四区免费观看| 国产精品一区www在线观看| 午夜a级毛片| 亚洲av中文字字幕乱码综合| 亚洲婷婷狠狠爱综合网| av天堂在线播放| 国产综合懂色| 午夜亚洲福利在线播放| 国产精品一区二区性色av| 99久国产av精品| 一边亲一边摸免费视频| 看十八女毛片水多多多| 中文字幕精品亚洲无线码一区| 日韩欧美一区二区三区在线观看| 国产亚洲精品av在线| 男人的好看免费观看在线视频| 在线观看av片永久免费下载| 色尼玛亚洲综合影院| 噜噜噜噜噜久久久久久91| 欧美区成人在线视频| 国产亚洲欧美98| av又黄又爽大尺度在线免费看 | 亚洲电影在线观看av| 国产单亲对白刺激| 长腿黑丝高跟| 一个人看的www免费观看视频| 美女 人体艺术 gogo| 久久精品国产清高在天天线| 伦精品一区二区三区| 午夜精品在线福利| 少妇丰满av| 中文字幕av在线有码专区| 午夜老司机福利剧场| 亚洲成人精品中文字幕电影| 啦啦啦观看免费观看视频高清| 丝袜美腿在线中文| 成人毛片a级毛片在线播放| 国产久久久一区二区三区| 国产视频首页在线观看| av.在线天堂| 一级av片app| 麻豆国产97在线/欧美| 黄色日韩在线| 99热这里只有是精品在线观看| 亚洲av免费在线观看| 黄色配什么色好看| 狂野欧美白嫩少妇大欣赏| 高清日韩中文字幕在线| 日韩国内少妇激情av| 可以在线观看的亚洲视频| 美女国产视频在线观看| 久久精品国产亚洲av涩爱 | 国产不卡一卡二| 国产午夜精品一二区理论片| 男插女下体视频免费在线播放| 日韩中字成人| 国产成人午夜福利电影在线观看| 日本一二三区视频观看| 黄片wwwwww| 欧美高清成人免费视频www| 男人的好看免费观看在线视频| 欧美日韩精品成人综合77777| 午夜久久久久精精品| 亚洲欧洲日产国产| 久久精品国产亚洲av涩爱 | 日韩成人av中文字幕在线观看| 久久精品国产亚洲av涩爱 | 国产成人freesex在线| 色哟哟哟哟哟哟| a级毛色黄片| 亚洲美女视频黄频| 精品久久久噜噜| 一级二级三级毛片免费看| 国产白丝娇喘喷水9色精品| 国产精品嫩草影院av在线观看| 蜜臀久久99精品久久宅男| 欧美高清性xxxxhd video| 久久精品影院6| 欧美人与善性xxx| 插阴视频在线观看视频| 亚洲av中文av极速乱|