999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種面向互聯網文本數據采集框架的設計

2021-09-23 06:08:16賀宗平王正路
電子技術與軟件工程 2021年12期
關鍵詞:引擎文本

賀宗平 王正路

(1.南京審計大學信息化辦公室 江蘇省南京市 211815 2.江蘇師范大學信息化建設與管理處 江蘇省徐州市 221116)

互聯網文本數據采集能力是目前各種數據集成、應用系統關注的一項核心支撐能力,在各種系統開發中有著重要的作用。各種網站、web應用系統的文本數據的獲取方式存在一定規律性和相似性,網站文本數據的利用,諸如NLP相關研究的價值較高。因此,研究面向互聯網文本數據采集的框架具有重要的現實意義,并且能夠提供分布式、組件化和配置化的框架能力。

1 采集框架設計

1.1 Scrapy概述

Scrapy是適用于Python的一個快速、高層次的屏幕抓取和Web抓取框架,用于抓取Web站點并從頁面中提取結構化的數據。Scrapy用途廣泛,可以用于數據挖掘、監測和自動化測試。Scrapy是一個適用爬取網站數據、提取結構性數據的應用程序框架,它可以應用在廣泛領域:Scrapy常應用在包括數據挖掘,信息處理或存儲歷史數據等一系列的程序中。通常我們可以很簡單的通過Scrapy框架實現一個爬蟲,抓取指定網站的文字或圖片等內容。Scrapy架構示意圖如圖1所示。

Scrapy Engine框架核心:負責爬蟲采集器、采集流水線、分析下載器、調度器之間的信息交互、數據傳輸等;

Scheduler調度器:根據Scrapy Engine發送的Requests請求,按照需求排列進入隊列,當Scrapy Engine進行處理時,調度器將此請求轉交處理;

Downloader分析下載器:負責與Scrapy Engine所有Request請求進行分析過濾獲取,并將獲取到的Responses內容傳給Scrapy Engine,再轉交給Spider來處理;

Spider爬蟲:負責對所有Response內容的分析處理過濾,從其中提取處理數據,獲取指定字段所需要的數據,并將需要追蹤采集的URL提交框架,重新進入Scheduler調度器;

Item Pipeline采集流水線:負責處理Spider中獲取到指定字段數據,并進行分析、過濾、存儲等采集后期處理操作;

Downloader Middlewares下載中間件:一個可以自定義擴展下載功能的組件;

Spider Middlewares中間件:一個可以自定擴展和操作引擎和Spider中間通信的功能組件。

Requests:爬蟲引擎訪問互聯網網站內容的http請求;

Responses:http請求的返回內容,支持xpath、css、re等解析方式,以及處理語言文字格式等。

1.2 架構設計

基于scrapy設計的文本數據采集框架應當具有以下幾種能力:

(1)框架組件輕量化,應用方便;

(1)支持海量數據的采集,具備數據定制化存儲、采集消息推送等功能;

(1)具備分鐘級別的定時調度采集能力,能夠對采集目標進行定時采集。

如圖2所示,框架具體由5個部分組成:

1.2.1 crawler采集引擎

crawler采集引擎是基于scrapy的可配置特征庫的爬蟲引擎,采集對象網頁的特征經過分析后被寫入元數據中,crawler根據開發人員配置的特征信息表數據和定時調度信息進行分析采集。

1.2.2 esoperation存儲組件

esoperation存儲組件是存儲crawler引擎采集的文本數據、元數據信息內容等,可根據開發和應用的需求進行定制存儲。

1.2.3 find檢索組件

find檢索組件是基于elasticsearch的高級檢索組件,具備支持按用戶自定義特征、時間、關鍵詞等維度進行組合聚合檢索。

1.2.4 analysis緩存組件

圖1:Scrapy架構示意圖

圖2:文本數據采集框架示意圖

圖3:常規式集成示意圖

圖4:配置式集成示意圖

analysis緩存組件是基于redis構建的高速緩存服務,為系統采集服務提供緩存和消息隊列服務。

1.2.5 notify消息組件

notify消息組件為高性能消息推送服務組件,可根據用戶需求在采集服務過程中集成進行消息定制推送等服務,例如支持企業微信的消息推送等。

1.3 框架流程

(1)配置采集目標源的網頁特征數據表信息,配置采集任務的定時調度時間間隔;crawler引擎根據配置信息啟動采集任務;

(2)esoperation組件采集分析每一條文本信息,根據用戶自定義規則進行過濾并存儲持久化;

(3)采集分析過程中,根據自定義參數和配置,notify組件進行相關消息的推送和提示;

(4)集成和應用環節,通過find組件提供查詢API接口和服務,為系統提供多種豐富的組合查詢檢索功能;

(5)系統可配置采集中產生的高頻公共統計數據、文本數據的高速訪問服務。

2 功能需求分析

2.1 定時采集調度

定時采集調度是互聯網數據采集中基礎核心的功能,通過系統提供定時采集指定數據源頭的訪問能力。定時調度器包括以下幾個部分內容:

2.1.1 觸發器triggers

觸發器主要的是調度的邏輯,用于指定任務作業的運行依據和條件。包括了三種主要的trigger:第一種是date,即指定的系統后臺運行時間點觸發;第二種是interval,系統指定固定的時間間隔觸發運行;第三種是cron,按照Linux Crontab規范的時間周期性觸發運行。

2.1.2 任務儲存器job stores

主要用于存放任務,把運行任務的相關元信息數據存放在內存或數據庫中。

2.1.3 執行器executors

執行器主要是確保任務的并發執行可靠性,將多任務提交到線程池或進程池中運行,并任務完成的狀態信號通知給調度器。

2.1.4 調度器schedulers

調度器是整個定時采集調度的核心控制組件,將觸發器、任務存儲器、執行器在調度器中進行運行和關聯操作。

2.2 分布式采集

分布式采集是以可擴展集群滿足海量采集數據需求,本研究的分布式采集通過將任務分配和節點協同進行分布式采集。

2.2.1 任務分配

任務分配采用了可配置化目標采集地址,采集器為基于docker的獨立構建,可根據采集目標地址的情況進行集群化擴展配置,實現集群并發采集。

2.2.2 采集協同

采集任務的協同采取簡化機制設計,在采集地址元信息表中配置對應集群中的采集器,實現采集任務負載均衡。

2.3 集成與去重

(1)對于采集周期一致、需求相似,且需采集多個數據源項目的需求情況,支持將多個爬蟲采集器集成綜合為獨立插件,具有良好的復用和擴展性。

(2)支持采集過程的網頁關鍵標識標題和URL去重,對同站源的重復內容過濾,防止重復內容。在采集存儲環節,通過對同源網站的URL進行重復性檢索查詢,進而實現防止內容采集重復。

2.4 數據存儲與消息推送

(1)系統基于全文檢索數據庫Elastic Search進行采集數據存儲,能夠對采集數據存儲字段進行靈活自定義配置,支持不同的系統任務采集字段差異化可靈活配置。

(2)向系統集成提供消息推送服務,具有穩定高性能的無阻塞異步消息隊列,以及可定制化的消息類型的服務,以SDK、API的方式支持適配微信、釘釘等移動端應用消息通信。

3 應用集成

應用集成以組件形式為系統開發和應用的場景提供集成支持,一般應用于采集調度周期類似、需求近似,需要采集多個目標網站文本數據源的項目。

3.1 常規式集成

常規項目中的采集需求,通常是增加開發不同的爬蟲,這種方式開發量大,需要針對每一個網站都要進行定制化開發。如圖3所示。

3.2 配置式集成

本項目研究實現了可配置化的采集源配置,通過動態配置元數據信息即可以實現常規集成,無需額外開發工作量。將這些爬取目的地址集成為一個爬蟲,我們只需維護這一個集成中間件即可以,同時支持集群分布式采集,方便采集服務動態擴容。如圖4所示。

3.3 集成示例

以某系統集成應用采集框架進行新聞文本數據采集為例。

(1)引用crawler引擎組件,采集網站特征參數,以人民日報、鳳凰網兩個網站采集為例:

crawler作為采集引擎核心組件,具備網站內容解析、采集調度等核心基礎功能,先期分析目標網站的特征參數,將特征參數傳遞給crawler的啟動參數,同時配置采集調度時間間隔。

(2)檢索查詢。

(3)消息推送。

以企業微信移動端應用作為推送終端為例。

4 結束語

通過設計面向互聯網文本數據的采集框架,實現了采集能力的高效集成和可管理配置化,能夠為各種系統應用場景提供豐富的采集能力,為NLP自然語言處理的相關的研究提供了豐富的研究語料和文本數據支撐,具有重要的支撐意義。

猜你喜歡
引擎文本
以學促干 挺膺擔當 激活砥礪前行的紅色引擎
初中群文閱讀的文本選擇及組織
甘肅教育(2020年8期)2020-06-11 06:10:02
在808DA上文本顯示的改善
基于doc2vec和TF-IDF的相似文本識別
電子制作(2018年18期)2018-11-14 01:48:06
三生 三大引擎齊發力
藍谷: “涉藍”新引擎
商周刊(2017年22期)2017-11-09 05:08:31
文本之中·文本之外·文本之上——童話故事《坐井觀天》的教學隱喻
論《柳毅傳》對前代文本的繼承與轉化
人間(2015年20期)2016-01-04 12:47:10
無形的引擎
河南電力(2015年5期)2015-06-08 06:01:46
基于Cocos2d引擎的PuzzleGame開發
主站蜘蛛池模板: 91在线中文| 大香网伊人久久综合网2020| a级免费视频| 国产美女主播一级成人毛片| 在线观看热码亚洲av每日更新| 国产美女主播一级成人毛片| 亚洲精品手机在线| 亚洲欧美综合精品久久成人网| av天堂最新版在线| 欧美一区二区三区国产精品| 免费看黄片一区二区三区| 99re这里只有国产中文精品国产精品 | 天天爽免费视频| 在线观看网站国产| 伊人成人在线视频| 一本色道久久88亚洲综合| 久久毛片网| 免费 国产 无码久久久| 婷婷六月激情综合一区| 日韩视频福利| 91视频青青草| www.av男人.com| 国内自拍久第一页| 欧美精品不卡| 一级做a爰片久久免费| 无码丝袜人妻| 亚洲精品手机在线| 午夜老司机永久免费看片| 国产91特黄特色A级毛片| 在线精品视频成人网| 无码人妻免费| 黑色丝袜高跟国产在线91| 国产精品观看视频免费完整版| 中国一级特黄大片在线观看| 成人午夜天| 多人乱p欧美在线观看| 欧美狠狠干| 欧美精品影院| 国产打屁股免费区网站| 在线视频精品一区| 国产真实乱子伦精品视手机观看| 人妻夜夜爽天天爽| 99色亚洲国产精品11p| 天堂中文在线资源| 国产网友愉拍精品| 亚洲娇小与黑人巨大交| 91精品国产91久无码网站| 精品伊人久久大香线蕉网站| 一区二区三区四区在线| 亚洲第一成年网| 91精品久久久久久无码人妻| 手机在线免费毛片| 久久亚洲精少妇毛片午夜无码| 996免费视频国产在线播放| 天堂av综合网| 又污又黄又无遮挡网站| 九色91在线视频| 欧美有码在线| 日韩国产高清无码| 精品国产免费观看| 成年人午夜免费视频| 高h视频在线| 久久永久视频| 亚洲日韩AV无码精品| 亚洲第一在线播放| 999国产精品| 国产交换配偶在线视频| 无码专区在线观看| 国产原创自拍不卡第一页| 国产a v无码专区亚洲av| 天天色天天综合| 日韩天堂视频| 永久免费av网站可以直接看的 | 欧美三级不卡在线观看视频| 中文字幕亚洲专区第19页| 国产欧美日韩另类精彩视频| 免费无码网站| 日韩欧美成人高清在线观看| 精品乱码久久久久久久| 国产全黄a一级毛片| 久夜色精品国产噜噜| 精品久久久久久成人AV|