国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Jsoup的互聯(lián)網(wǎng)突發(fā)事件輿情數(shù)據(jù)爬蟲技術(shù)研究

2021-11-30 00:24:36馮宇星龐君如曹云龍
科技經(jīng)濟導刊 2021年5期
關(guān)鍵詞:爬蟲數(shù)據(jù)源網(wǎng)頁

馮宇星,龐君如,崔 磊*,曹云龍,石 鋒

(1.中國氣象局公共氣象服務中心,北京 100081;2.中國氣象局減災司公眾處,北京 100081)

1.引言

中國是世界上自然災害發(fā)生十分頻繁的少數(shù)國家之一,近年來,其他事故災難、公共衛(wèi)生事件、社會安全事件也頻頻發(fā)生,對互聯(lián)網(wǎng)中突發(fā)事件相關(guān)輿情數(shù)據(jù)的收集和分析成為氣象防災減災的重要構(gòu)成部分。實踐表明,互聯(lián)網(wǎng)輿情數(shù)據(jù)存在稀疏性、不確定性、模糊性等缺點,但是具有不可替代的多元性、豐富性、動態(tài)性和關(guān)聯(lián)性等特征。鑒于此,亟待通過研究最新爬蟲技術(shù)方法,快速、準確采集有效互聯(lián)網(wǎng)突發(fā)事件輿情數(shù)據(jù),充分發(fā)揮輿情數(shù)據(jù)的知識價值,實現(xiàn)輿情信息的動態(tài)感知、深度挖掘和智能分析。

2.互聯(lián)網(wǎng)突發(fā)事件輿情數(shù)據(jù)

隨著互聯(lián)網(wǎng)的發(fā)展及新媒體傳播平臺的影響,關(guān)注突發(fā)事件服務的人群數(shù)量不斷增加,能夠及時獲取突發(fā)事件信息,有力保證突發(fā)事件相關(guān)的氣象預警、防災減災等信息及時傳遞給用戶,是氣象服務中極其重要的事。另外,通過互聯(lián)網(wǎng)突發(fā)事件輿情信息,可以突破人力資源的限制,實現(xiàn)全天24h不間斷監(jiān)測互聯(lián)網(wǎng)信息,并快速發(fā)現(xiàn)突發(fā)事件災情信息,提高突發(fā)事件獲取的時效性,及時獲取第一手資料,以進一步提高突發(fā)事件風險預警與評估的實時性和準確性。突發(fā)事件輿情數(shù)據(jù)采集通過確定突發(fā)事件關(guān)鍵詞和數(shù)據(jù)源范圍來采集。

2.1 突發(fā)事件關(guān)鍵詞

為了保證從互聯(lián)網(wǎng)獲取數(shù)據(jù)的準確與有效,互聯(lián)網(wǎng)突發(fā)事件輿情數(shù)據(jù)將基于突發(fā)事件關(guān)鍵詞去爬蟲采集。突發(fā)事件關(guān)鍵詞參照于國家預警信息發(fā)布中心自然災害、事故災難、公共衛(wèi)生事件、社會安全事件四大類突發(fā)事件,確定了137個突發(fā)事件關(guān)鍵詞。自然災害類突發(fā)事件關(guān)鍵詞包括洪水、洪澇、決口、垮堤、干旱、氣象災害、暴雨、大雪、龍卷風、沙塵暴、臺風、大風、冰雹、寒潮、高溫、干熱風、干旱、大霧、低溫、霜凍、雷電、雪崩、地震、地質(zhì)災害、山體崩塌、滑坡、泥石流、地面塌陷、地裂縫、海洋災害、風暴潮、巨浪、海嘯、赤潮、海冰、生物災害、蝗蟲、森林火災、草原火災。事故災難類突發(fā)事件關(guān)鍵詞包括安全事故、飛行事故、墜機、撞機、緊急迫降、水上突發(fā)事件、水上保安事件、撞船、觸礁、鐵路中斷、公路中斷、行車中斷、交通中斷、斷路、港口癱瘓、斷航、大面積停電、電網(wǎng)事故、通信故障、通信中斷、骨干網(wǎng)中斷、支付系統(tǒng)癱瘓、清算系統(tǒng)癱瘓、供氣中斷、停氣、停水、特種設備事故、踩踏、環(huán)境污染、生態(tài)破壞、輻射污染、取水中斷、化學品泄漏、毒品泄漏、核事故、核事件、污染事故、盜伐、濫伐、毀林開墾、物種滅絕。公共衛(wèi)生事件類突發(fā)事件關(guān)鍵詞包括肺鼠疫、肺炭疽、腺鼠疫、非典型肺炎、禽流感、群體性不明原因疾病、新傳染病、毒株丟失、食品安全事故、食物中毒、傳染病疫情、輸入性病例、霍亂、醫(yī)源性感染事件、職業(yè)中毒、動物疫情、口蹄疫、瘋牛病、豬瘟、新城疫疫情、牛瘟、牛肺疫、非洲豬瘟、非洲馬瘟、布魯氏菌病、結(jié)核病、狂犬病、炭疽。社會安全事件類突發(fā)事件關(guān)鍵詞包括群體性事件、沖擊、圍攻、打砸搶燒、阻斷交通、阻撓施工、聚集事件、大規(guī)模游行、集會、絕食、靜坐、請愿、群體性械斗、沖突事件、暴獄事件、游行示威、上訪、多校串聯(lián)、非法宗教活動、金融突發(fā)事件、涉外突發(fā)事件、涉外事件、撤僑、糧食脫銷、市場異常、必需品短缺、恐怖襲擊、核爆炸、爆炸襲擊、劫持平民、大規(guī)模襲擊、重大刑事案件。

2.2 輿情數(shù)據(jù)采集數(shù)據(jù)源

為了保證互聯(lián)網(wǎng)采集數(shù)據(jù)的有效性,突發(fā)事件輿情數(shù)據(jù)源范圍,確定為國家政務網(wǎng)站、社會主流媒體、官方微信微博賬號?;ヂ?lián)網(wǎng)突發(fā)事件輿情數(shù)據(jù)獲取將從已確定的數(shù)據(jù)源中,通過突發(fā)事件關(guān)鍵詞,運用爬蟲技術(shù)去采集。政府官網(wǎng)數(shù)據(jù)源包括中華人民共和國應急信息網(wǎng)、中華人民共和國應急管理部、中華人民共和國生態(tài)環(huán)境部、中華人民共和國自然資源部、國家煤礦安全監(jiān)察局、中華人民共和國交通運輸部、中華人民共和國農(nóng)業(yè)農(nóng)村部、文化和旅游部、人力資源和社會保障部、民政部、新疆生產(chǎn)建設兵團應急管理局、新疆維吾爾自治區(qū)應急管理廳、寧夏回族自治區(qū)應急管理廳、甘肅省應急管理廳、西藏自治區(qū)應急管理廳等。社會主流媒體數(shù)據(jù)源包括百度新聞、澎湃新聞、中國新聞網(wǎng)、鳳凰網(wǎng)、環(huán)球網(wǎng)、新浪新聞、人民日報、中國天氣網(wǎng)、騰訊新聞、網(wǎng)易新聞、中國林業(yè)網(wǎng)、光明網(wǎng)、央廣網(wǎng)、搜狐、中國應急、央視網(wǎng)、人民網(wǎng)等。微博、微信公眾號數(shù)據(jù)源包括人民日報、北京日報、國家應急廣播、中國天氣網(wǎng)、中國氣象數(shù)據(jù)、廣州天氣等。

3.爬蟲相關(guān)技術(shù)

3.1 爬蟲原理

網(wǎng)絡爬蟲是搜索引擎的重要組成部分,它通過自動提取網(wǎng)頁的程序,為搜索引擎從萬維網(wǎng)上下載網(wǎng)頁。傳統(tǒng)爬蟲流程為從一個或若干初始網(wǎng)頁的URL開始,獲得初始網(wǎng)頁上的URL,在抓取網(wǎng)頁的過程中,不斷從當前頁面上抽取新的URL放入隊列,直到滿足系統(tǒng)的一定停止條件[1,2,3]。

3.2 爬蟲分類

網(wǎng)絡爬蟲按照系統(tǒng)結(jié)構(gòu)和實現(xiàn)技術(shù),可以分為以下幾種類型:通用網(wǎng)絡爬蟲(General、Purpose、Web、Crawler)、聚焦網(wǎng)絡爬蟲(Focused、Web、Crawler)、增量式網(wǎng)絡爬蟲(Incremental、Web、Crawler)、深層網(wǎng)絡爬蟲(Deep、Web、Crawler)。實際的網(wǎng)絡爬蟲系統(tǒng)通常是幾種爬蟲技術(shù)相結(jié)合實現(xiàn)的[4,5,6]。通用網(wǎng)絡爬蟲又稱全網(wǎng)爬蟲(Scalable、Web、Crawler),常用于為門戶站點搜索引擎、大型Web服務提供商采集數(shù)據(jù),從一些種子、URL或整個WEB中進行爬蟲。聚焦網(wǎng)絡爬蟲(Focused、Crawler),又稱主題網(wǎng)絡爬蟲(Topical、Crawler),通過主題關(guān)鍵詞去爬取與主題相關(guān)頁面。增量式網(wǎng)絡爬蟲(Incremental、Web、Crawler)是對發(fā)生過變化的網(wǎng)頁或者新產(chǎn)生的頁面進行爬蟲。能保證所爬的頁面是新的頁面。

3.3 爬蟲技術(shù)

Jsoup是一款使用Java語言的HTML解析器,提供了一套用于處理實際HTML的Java庫,可直接解析某個URL地址、HTML文本內(nèi)容。它使用HTML5最佳DOM方法和CSS選擇器,為獲取URL以及提取和處理數(shù)據(jù)提供了非常方便的API。使用Jsoup直接獲取網(wǎng)頁源代碼然后獲取元素和內(nèi)容。WebDriver全稱Selenium WebDriver[7,8],是目前先進的自動化測試框架。Selenium WebDriver網(wǎng)頁交互功能強大,通過模擬用戶行為,實現(xiàn)動態(tài)的網(wǎng)頁爬取。將獲取到的HTML網(wǎng)頁的半結(jié)構(gòu)化數(shù)據(jù)通過格式轉(zhuǎn)換、特殊字符去除、數(shù)據(jù)合并等操作轉(zhuǎn)化為結(jié)構(gòu)化數(shù)據(jù)。

4.輿情信息爬蟲實現(xiàn)

通過對爬蟲原理及爬蟲技術(shù)的研究,結(jié)合突發(fā)事件輿情數(shù)據(jù)特點,首先確定了數(shù)據(jù)采集策略,然后確定數(shù)據(jù)采集步驟、數(shù)據(jù)采集方法和具體實現(xiàn)過程。具體如下所述。

4.1 數(shù)據(jù)采集策略

由于突發(fā)事件關(guān)鍵詞太多,一次爬蟲采集過程耗時太長,為了保證爬蟲數(shù)據(jù)的時效性,對所有突發(fā)事件關(guān)鍵詞根據(jù)重要程度進行分級,共分為三級,爬蟲程序?qū)崿F(xiàn)多線程執(zhí)行,并將爬蟲關(guān)鍵詞分級分時段處理,按三個級別設置時間間隔。第一級關(guān)鍵詞每6小時爬取一次,第二級和第三級關(guān)鍵詞每24小時進行爬取,若爬蟲時間過長超過6小時,會在結(jié)束后立即開始新一輪爬蟲,以完成分時段分級爬取,有效避免數(shù)據(jù)產(chǎn)生冗余的同時提高數(shù)據(jù)采集效率。采集數(shù)據(jù)的關(guān)鍵詞還將按照自然災害、事故災難、公共衛(wèi)生事件、社會安全事件四個類別進行分類,便于系統(tǒng)對于關(guān)鍵詞的內(nèi)容分析或存儲。

4.2 數(shù)據(jù)采集步驟

互聯(lián)網(wǎng)突發(fā)事件輿情數(shù)據(jù)采集步驟分為四個步驟:一是從數(shù)據(jù)源列表中獲取網(wǎng)頁信息;二是分析網(wǎng)頁布局與網(wǎng)頁內(nèi)容;三是根據(jù)突發(fā)事件關(guān)鍵詞及網(wǎng)頁布局,運用爬蟲技術(shù),編寫爬蟲方法獲取網(wǎng)頁數(shù)據(jù),并對數(shù)據(jù)做去重、清洗等處理。四是對處理后的數(shù)據(jù)進行結(jié)構(gòu)化存儲。

4.3 數(shù)據(jù)采集方法

根據(jù)突發(fā)事件采集數(shù)據(jù)源列表,數(shù)據(jù)源網(wǎng)站包括靜態(tài)網(wǎng)頁和動態(tài)網(wǎng)頁,通過對爬蟲技術(shù)的研究,突發(fā)事件輿情數(shù)據(jù)采集使用的爬蟲技術(shù)分為三種類型:一是通過使用Jsoup進行靜態(tài)網(wǎng)頁爬取,通過Jsoup直接獲取網(wǎng)頁源代碼然后獲取元素和內(nèi)容值等。二是對于反爬較嚴重的情況以及動態(tài)網(wǎng)頁將通過Selenium WebDriver(自動測試框架)模擬瀏覽器行為爬取內(nèi)容。第三,對于反爬技術(shù)較低,以及接口暴露的網(wǎng)站將會利用封裝好的HTTP請求發(fā)送器對某個接口爬取獲取JSON數(shù)據(jù)。

4.4 數(shù)據(jù)采集實現(xiàn)

突發(fā)事件輿情數(shù)據(jù)采集實現(xiàn)使用Spring、Boot框架,使用Java語言進行開發(fā),數(shù)據(jù)庫為postgreSQL。主要分為以下步驟:首先新建Maven項目,在項目里添加需要的工具包,編寫數(shù)據(jù)庫等配置文件;二是使用HTTPClient獲取網(wǎng)頁信息。通過HTTPClient訪問網(wǎng)頁時,瀏覽器會向網(wǎng)頁所在服務器發(fā)起請求并獲取解析響應、返回結(jié)果,獲取到網(wǎng)頁HTML頁面數(shù)據(jù)。三是通過Jsoup工具對HTML頁面信息進行解析。通過對HTTPClient獲取到的網(wǎng)頁信息進行遍歷解析,先通過Document doc = Jsoup.parseJsoup.parse(File in, String charsetName, String baseUri) 方法將HTML解析成一個Document,然后使用Jsoup技術(shù)中的Select方法來抽取突發(fā)事件關(guān)鍵詞相關(guān)數(shù)據(jù),Select方法將返回一個Elements集合,并返回抽取和處理結(jié)果;四是對解析后的數(shù)據(jù)進行結(jié)構(gòu)化存儲。

5.結(jié)語

在深刻理解爬蟲原理和爬蟲技術(shù)的基礎(chǔ)上,本文結(jié)合互聯(lián)網(wǎng)突發(fā)事件輿情數(shù)據(jù)采集需求,制定了采集策略、確定了輿情數(shù)據(jù)采集方法,并通過使用Spring框架和postgreSQL數(shù)據(jù)庫,實現(xiàn)了突發(fā)事件輿情數(shù)據(jù)的采集和存儲,后續(xù)將根據(jù)數(shù)據(jù)采集結(jié)果,進一步優(yōu)化數(shù)據(jù)爬蟲方法,實現(xiàn)互聯(lián)網(wǎng)突發(fā)事件輿情數(shù)據(jù)的有效、實時的采集。

猜你喜歡
爬蟲數(shù)據(jù)源網(wǎng)頁
利用網(wǎng)絡爬蟲技術(shù)驗證房地產(chǎn)灰犀牛之說
基于Python的網(wǎng)絡爬蟲和反爬蟲技術(shù)研究
基于CSS的網(wǎng)頁導航欄的設計
電子制作(2018年10期)2018-08-04 03:24:38
利用爬蟲技術(shù)的Geo-Gnutel la VANET流量采集
電子測試(2018年1期)2018-04-18 11:53:04
Web 大數(shù)據(jù)系統(tǒng)數(shù)據(jù)源選擇*
基于URL和網(wǎng)頁類型的網(wǎng)頁信息采集研究
電子制作(2017年2期)2017-05-17 03:54:56
基于不同網(wǎng)絡數(shù)據(jù)源的期刊評價研究
大數(shù)據(jù)環(huán)境下基于python的網(wǎng)絡爬蟲技術(shù)
電子制作(2017年9期)2017-04-17 03:00:46
網(wǎng)頁制作在英語教學中的應用
電子測試(2015年18期)2016-01-14 01:22:58
基于真值發(fā)現(xiàn)的沖突數(shù)據(jù)源質(zhì)量評價算法
天峨县| 海口市| 苍南县| 大城县| 介休市| 日照市| 淮阳县| 通海县| 光山县| 东光县| 赤壁市| 屯门区| 富裕县| 达州市| 堆龙德庆县| 丹巴县| 元江| 怀仁县| 鲁山县| 松滋市| 青神县| 广昌县| 扎鲁特旗| 化德县| 靖边县| 思南县| 镇江市| 邯郸市| 彭山县| 望江县| 西城区| 万安县| 凤凰县| 九龙县| 墨脱县| 洪洞县| 湛江市| 桐梓县| 乌鲁木齐市| 沅陵县| 水城县|