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

基于webmagic 爬取技術(shù)的西藏主流媒體熱點(diǎn)新聞的獲取

2020-01-08 08:04:48王國慶高紅梅黃法錦白瑪旺久西藏大學(xué)信息科學(xué)技術(shù)學(xué)院西藏拉薩850000
數(shù)碼世界 2020年1期
關(guān)鍵詞:頁面信息

王國慶 高紅梅 黃法錦 白瑪旺久 西藏大學(xué)信息科學(xué)技術(shù)學(xué)院 (西藏 拉薩850000)

1 研究背景

通過調(diào)查研究發(fā)現(xiàn),在西藏自治區(qū)外,大部分人對西藏的物質(zhì)文化和人民生活一知半解。造成此種現(xiàn)象的原因在于獲取西藏信息的渠道太少,人們對西藏的看法與實(shí)際情況存在偏差。但隨著互聯(lián)網(wǎng)的迅猛發(fā)展,爬蟲技術(shù)的日益成熟,通過對西藏主流媒體的爬取來獲取所需要的新聞,不僅能改變外界對于西藏的認(rèn)知和看法,而且有助于向區(qū)外展示和發(fā)揚(yáng)西藏文化,能夠讓人們更加清楚的了解和認(rèn)識到西藏人民多姿多彩的物質(zhì)文化生活。

2 相關(guān)技術(shù)

2.1 Maven 工具

Maven 是一個(gè)針對Java 開發(fā)項(xiàng)目的管理工具,能夠管理項(xiàng)目所依賴的jar 包。它以Jelly 作為自己的腳本語言。包含了一個(gè)項(xiàng)目對象模型(POM),一組標(biāo)準(zhǔn)集合,一個(gè)項(xiàng)目生命周期,一個(gè)依賴管理系統(tǒng)和用來定義在生命周期階段中插件目標(biāo)的邏輯。

2.2 WebMagic 總體框架

WebMagic 是一個(gè)簡單靈活的Java 爬蟲框架, WebMagic 主要包括兩個(gè)包,分別是核心包和擴(kuò)展包。其中核心包(webmagic-core)包含爬蟲基本模塊和基本抽取器,而擴(kuò)展包(webmagic-extension)則提供一些方便編寫爬蟲的工具。同時(shí)內(nèi)置了一些常用組件,便于爬蟲開發(fā)。

WebMagic 是 由Downloader、PageProcessor、Scheduler、Pipeline 四個(gè)組件構(gòu)成的。而Spider 則將四大組件組織起來。

用 于 數(shù) 據(jù) 流 轉(zhuǎn) 的 對 象:(1)Request: Request 是URL 地址 的 封 裝 層,實(shí) 現(xiàn) 了pageprocessor 和Downloader 交 互,是pageprocessor 控制Downloader 的唯一途徑。(2)Page:Page 代表Downloader下載的界面,可以是HTML、JSON或其他文本格式等。(3)Resultitems:Resultitems 負(fù)責(zé)存儲由pageprocessor 處理的結(jié)果以供Pipeline 使用。

WebMagic 總體架構(gòu)如圖1 所示。

4 案例實(shí)現(xiàn)

4.1 具體操作流程

圖2 信息爬取操作流程

4.2 爬蟲準(zhǔn)備工作

如果使用WebMagic 框架來進(jìn)行爬蟲的構(gòu)建,首先需要借助Maven 來創(chuàng)建WebMagic 項(xiàng)目,其次則是在項(xiàng)目的pom.xml 配置文件中添加對象的依賴。

4.3 網(wǎng)頁的下載

對于通用的網(wǎng)頁,Downloader 組件可通過URL 地址直接獲取網(wǎng)頁信息,具體則是通過超鏈接得到對應(yīng)的網(wǎng)頁,然后按照所需要的數(shù)據(jù)字段進(jìn)行抽取,將獲得的字段為空的數(shù)據(jù)舍棄,將所獲得的完整的數(shù)據(jù)存儲到MySQL 數(shù)據(jù)庫中。循環(huán)重試機(jī)制會把下載失敗的URL 再次放在隊(duì)尾進(jìn)行重試,直到超過所設(shè)置的重試次數(shù)為止,循環(huán)重試機(jī)制和設(shè)置重試次數(shù)可以有效解決因?yàn)槟承┚W(wǎng)絡(luò)原因而漏抓頁面的問題。

4.4 信息的抽取

PageProcessor 組件負(fù)責(zé)解析頁面,抽取有用的信息,以及發(fā)現(xiàn)新的鏈接。它可以根據(jù)用戶的需求來定制所需要的PageProcessor。其定制的功能主要分為三大部分:

(1)對爬蟲的配置,包括:配置帶爬取網(wǎng)站的編碼、Http 頭、超時(shí)時(shí)間、重試策略、代理等信息。

(2)爬蟲最為重要的部分則是頁面元素的抽取,對于已經(jīng)下載的頁面,主要采取三種抽取方式,分別為CSS 選擇器、Xpath 和正則表達(dá)式。代碼實(shí)現(xiàn):

page.putField("div",page.getHtml().css("div1.headline h1").all());

//以css 抽取方式抽取div 標(biāo)簽下class 為headline 中的h1標(biāo)簽。

page.putField("div2",page.getHtml().xpath("http://div[@id=qds_boxb1]/ul/li/a"));//以Xpath 抽取方式抽取div 標(biāo)簽下的id 為qds_boxb1 下的a 標(biāo)簽。

Page.putField(key: "div3",page.getHtml().css(selector:"div#demo1 li").Regex(".*中國特色社會主義.*").all());

//css 和正則表達(dá)式抽取方式混合使用來抽取。

(3)獲取鏈接則是第三個(gè)需要解決的問題,應(yīng)采用適合的方法來篩選出所需要的鏈接并將其加入到待抓取的隊(duì)列中。

page.addTargetRequests(page.getHtml().css("div.jdyw").links().all()); //獲取class 為jdyw下的URL

page.putField("url",page.getHtml().css("div.tbig_title h1").all());

//獲取URL 中class 為tbig_title下h1 標(biāo)簽中的內(nèi)容。

4.5 URL 的管理與去重

數(shù)據(jù)的抓取過程中需要對已經(jīng)抓取的、重復(fù)的URL 隊(duì)列進(jìn)行管理,Scheduler 組件負(fù)責(zé)管理待抓取的URL,以及一些去重的工作。URL 有二種去重方式,一是HashSet,使用Java 中的HashSet不能重復(fù)的特點(diǎn)去重,優(yōu)點(diǎn)是容易理解,使用方便。缺點(diǎn)是占用內(nèi)存大,性能較低。二是布隆過濾器,使用布隆過濾器也可以實(shí)現(xiàn)去重,優(yōu)點(diǎn)是占用的內(nèi)存要比使用HashSet 要小的多,也適合大量數(shù)據(jù)的去重操作。缺點(diǎn)是有誤判的可能。除非項(xiàng)目有特殊需求,否則無需定制Scheduler。

4.6 抽取結(jié)果的處理

Pipeline 組件負(fù)責(zé)抽取結(jié)果的處理,包括計(jì)算、持久化到文件、數(shù)據(jù)庫等。采用Pipeline 來處理抽取結(jié)果,有兩個(gè)重要的原因:(1)頁面抽取與后處理相分離,分離這兩個(gè)階段使得模塊化結(jié)構(gòu)更加明顯,代碼結(jié)構(gòu)更加清晰。(2)Pipeline 的功能相對固定,更易做成通用組件。WebMagic 默認(rèn)提供了“輸出到控制臺”和“保存到文件”兩種結(jié)果處理方案。Pipeline 定義了如何保存結(jié)果,如果要保存到指定的數(shù)據(jù)庫,則需編寫對應(yīng)的Pipeline。

5 新聞數(shù)據(jù)分析與可視化

即進(jìn)一步對已經(jīng)保存在MySQL 中的新聞數(shù)據(jù)進(jìn)行分析統(tǒng)計(jì),整理分類,通過使用Dreamweaver 軟件用PHP 語言來制作動態(tài)網(wǎng)頁與MySQL 相連。將所爬取到的新聞信息通過網(wǎng)頁的方式呈現(xiàn)給用戶。所爬取到的新聞將會進(jìn)行分類,用戶通過對網(wǎng)頁的訪問,以及利用關(guān)鍵字進(jìn)行檢索,將會獲取不同類別的新聞。

6 總結(jié)和展望

通過對以WebMagic 為框架構(gòu)建爬蟲,以Maven 技術(shù)管理Java 項(xiàng)目的研究,實(shí)現(xiàn)了對西藏主流媒體熱點(diǎn)新聞的爬取和存儲,在爬取過程中,可能會遇到內(nèi)部網(wǎng)絡(luò)不允許訪問外網(wǎng)的情況,這時(shí)就需要設(shè)置代理IP。有些網(wǎng)絡(luò)服務(wù)器反感爬蟲,會對請求頭做個(gè)簡單判別,直接拒絕那些明顯是由自動化程序發(fā)起的請求,為了避免自動化程序被拒絕,在請求時(shí),可以修改請求頭,讓自動化程序更像一個(gè)瀏覽器。

此爬蟲系統(tǒng)能夠使用戶更加全面的獲知和了解西藏主流媒體上的熱點(diǎn)新聞,促進(jìn)了人們對于西藏地區(qū)物質(zhì)文化與人民生活的了解,改善了人們心中對于西藏的認(rèn)知和看法。

猜你喜歡
頁面信息
微信群聊總是找不到,打開這個(gè)開關(guān)就好了
大狗熊在睡覺
刷新生活的頁面
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
同一Word文檔 縱橫頁面并存
淺析ASP.NET頁面導(dǎo)航技術(shù)
其實(shí)IE也懂Chrome的心
信息
健康信息
祝您健康(1987年3期)1987-12-30 09:52:32
主站蜘蛛池模板: 毛片a级毛片免费观看免下载| 夜夜操天天摸| 久久久久无码国产精品不卡| 国产高清在线精品一区二区三区| av在线5g无码天天| 亚洲国产成人久久77| a级毛片在线免费观看| 日韩人妻无码制服丝袜视频| 国产成人一区二区| 国产91视频免费| 天天干天天色综合网| 日韩久久精品无码aV| 国产精品手机在线播放| 日本www色视频| 欧美在线免费| 永久在线精品免费视频观看| 亚洲精品大秀视频| 99视频免费观看| 久久影院一区二区h| 日本午夜在线视频| 99ri国产在线| 在线观看亚洲天堂| 亚洲有无码中文网| 国产成人AV综合久久| 久久久精品无码一区二区三区| 国产美女叼嘿视频免费看| 亚洲精品天堂在线观看| 久爱午夜精品免费视频| 亚洲国产91人成在线| 极品国产在线| 黄色免费在线网址| 亚洲国产精品美女| 日韩高清一区 | 好紧好深好大乳无码中文字幕| 大乳丰满人妻中文字幕日本| 国产精品美女自慰喷水| 国产精品白浆无码流出在线看| 日韩在线中文| 国产精品国产主播在线观看| 精品乱码久久久久久久| 91色爱欧美精品www| 视频在线观看一区二区| 91精品综合| 视频二区欧美| 欧美日韩中文国产| 国产靠逼视频| 九九免费观看全部免费视频| 亚洲日韩AV无码精品| 91视频精品| 日本成人不卡视频| 亚洲成综合人影院在院播放| 亚洲精品图区| 国产激爽爽爽大片在线观看| 欧美v在线| 草逼视频国产| 日本午夜影院| 亚洲一区波多野结衣二区三区| 欧美成人区| 国产本道久久一区二区三区| 久无码久无码av无码| 国产视频久久久久| 男女猛烈无遮挡午夜视频| 久久久久久高潮白浆| 国产福利在线观看精品| 美女潮喷出白浆在线观看视频| 亚洲精品国产自在现线最新| 日本成人精品视频| 亚洲狼网站狼狼鲁亚洲下载| 97成人在线视频| vvvv98国产成人综合青青| 国内丰满少妇猛烈精品播| 色婷婷久久| 中国成人在线视频| 无码精品国产VA在线观看DVD| 精品福利视频导航| 亚洲欧美国产高清va在线播放| 国产精品30p| 99ri国产在线| 熟女视频91| 综合久久五月天| 精品一区国产精品| 欧美日韩中文字幕在线|