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

面向熱點新聞的爬蟲系統設計與實現

2019-02-14 02:00:42林文濤陳偉強劉杭燕
數字通信世界 2019年1期
關鍵詞:頁面系統

林文濤,陳偉強,劉杭燕,葉 楠

(福州理工學院工學院,福州 350506)

1 引言

在這信息如此龐雜的時代要使熱點新聞信息更易于查詢,易于獲取。用爬蟲程序實現熱點新聞高效、快速而便捷的獲取與整合。通過建立網站的方式來展示獲取的新聞信息。為了讓用戶定制個人信息獲取偏好、保存歷史記錄等功能,而編寫了用戶模塊[1-2]。

2 熱點新聞的爬蟲系統設計原理與創新

網絡爬蟲是通過程序或腳本借助現有爬蟲技術或工具編寫的系統,該系統將有目的性的自動抓取互聯網信息[3]。網絡檢索功能起于互聯網內容爆炸性發展所帶來的對內容檢索的需求。搜素引擎不斷發展,人們的需求也不斷提高,網絡信息搜索已經成為人們每天都有進行的內容。如何使搜索引擎能夠時刻滿足人們的需求?最初的檢索功能通過索引站的方式實現,從而有了網絡機器人[4]。本項目來源于新聞爬蟲系統項目的建設,旨在為相關機構或個人提供及時的網絡信息服務。

2.1 設計原理

(1)利用Python語言結合該語言的相關庫或技術如Requests/urllib等編寫爬蟲系統[5]。系統可以定期的對幾個大型的新聞發布平臺進行廣度優先的爬取策略來增量獲取新聞數據。

(2)采用Xpath/Re/BeautifulSoup庫對獲取到的新聞數據進行關鍵字段提取。其中關鍵字段有新聞標題、編輯者、發布平臺、發布時間等,之后再將這些關鍵字段與新聞圖片、正文內容一并存儲與本地,等待進一步操作。

(3)使用python的pymysql庫對MySQL數據庫進行對接。

(4)通過Flask web框架構建網站,負責為用戶需求而控制和調度相應的模塊以及對MySQL數據庫中資源的調用與整合,為實現前端頁面的對接實現不同使用場景下的多種數據請求接口:由用戶通過URL請求時,服務器端將直接返回相應的HTML頁面;若碰到特殊的需求需要使用異步傳輸時,將返回以JSON格式封裝的數據,在前端通過JavaScript腳本語言對其進行相應處理。

(5)前端界面利用Python的Jinja2模板引擎以及Bootstrap/AJAX/JQurey等相關技術實現,兼顧用戶交互方式的多樣性以及系統的跨瀏覽器兼容性。

2.2 爬蟲程序編寫邏輯

本文中的基于網絡爬蟲的熱點新聞發布系統可以簡單的理解為,對新聞發布平臺的眾多的新聞頁面格式化——根據需要提取該新聞頁面中的關鍵信息。因此,為了讓程序更加易讀、更容易拓展,在爬蟲設計之初先編寫了一個Website類,供后續爬蟲程序拓展。

圖1 Website類圖

在此類中根據系統需要,主要提取新聞頁面的鏈接、新聞發布時間、新聞標題、新聞來源、新聞編輯、新聞內容、新聞類型。根據上述程序,針對相應的新聞發布平臺編寫相應的爬蟲類實現Website類中的抽象方法。其中,getLinks()與fromRank()方法用于在對應新聞發布平臺遍歷新聞頁面。當后續程序需要批量爬取新聞頁面時只需調用getParams()方法即可。

3 熱點新聞發布系統設計與實現

3.1 數據爬取

在本系統中,數據獲取依賴于python編寫的網絡爬蟲,爬蟲程序基于Requests來發起對新聞發布平臺的請求,獲取返回的HTML頁面,之后通過Xpath(XML路徑語言)與python內置的re(正則表達式)庫編寫定位HTML上關鍵字段的爬取邏輯,將新聞的標題、來源、編輯者、存儲路徑、發布時間、新聞類別等字段存儲進MySQL,新聞內容與新聞圖片存儲到本地中。由此即可編寫一個針對新聞信息的可擴展爬蟲程序。

爬蟲程序主要由鏈接過濾子模塊、頁面解析子模塊、爬行控制子模塊以及數據存儲子模塊構成,其模塊結構如圖2所示:

3.1.1 鏈接過濾子模塊

圖2 數據獲取功能模塊結構圖

本系統的爬蟲程序運行過程中,將會不斷往URL隊列中添加新的URL鏈接,其中某些URL鏈接可能并不是程序所需要的。因此這時候就需要再編寫一個用于過濾URL鏈接的過濾器。對于這個過濾器只有某些條件符合的URL才能進入待爬URL隊列,將其余不符合條件的URL剔除,不會加入到待抓取的爬行隊列中。同時對于符合條件的URL也要判斷該URL是否被爬取過,如果已被爬過則舍棄。

在爬蟲程序中使用鏈接過濾器對URL進行過濾是有必要的。由于大量不符合條件的URL被過濾掉了,爬行隊列中僅僅加入符合條件的URL,充分節省了寶貴的內存空間。鏈接過濾子模塊的工作方式如圖3所示:

圖3 鏈接過濾子模塊

3.1.2 頁面解析子模塊

通過鏈接過濾子模塊過濾獲取的URL隊列,傳輸進此模塊。頁面解析子模塊將會對URL隊列中的鏈接逐一解析,解析過程是通過Xpath(XML路徑語言)定位頁面中需要抽取消息的具體位置,后獲取該信息并存儲進數據庫。但是有些URL即使通過了過濾器子模塊,也會因為排版的些許差異而使得Xpath無法定位,這是就需要有相應的程序來檢測這樣的URL。頁面解析子模塊的工作方式如圖4所示:

圖4 頁面解析子模塊

3.1.3 爬取策略子模塊

爬取策略模塊是整個爬蟲程序的核心,它控制著整個爬蟲的抓取策略(寬度優先或者深度優先)以及停止條件。爬行控制子模塊的工作流程如圖5所示:

圖5 爬行控制子模塊

3.1.4 數據存儲子模塊

對HTML頁面進行解析后,獲得的關鍵字段,將會存儲于數據庫中,而新聞內容與新聞圖片將會被整合存儲為本地文件。數據存儲子模塊的工作流程如圖6所示:

3.2 數據可視化功能模塊

系統可視化功能模塊的主要功能結構如圖7所示,通過ExtJS結合Google Visualization API進行構建,其主要功能包括:首頁新聞推薦:登錄網站后首頁將是按熱度排序推薦的新聞條目;按類型查看:查看特定類型的新聞;按時間查看:查看某個時間段的新聞:通過關鍵字檢索:輸入關鍵字檢索查看當前符合條件的新聞;每日新聞增量:查看近20天每日新增新聞的數量;當日新聞詞頻分析:查看發布日期為當日的新聞的詞頻分析柱狀圖;關鍵字檢索查看每日詞頻變化折線圖:數日某個關鍵字,獲取該詞近20日的詞頻變化。

圖6 數據存儲子模塊

圖7 數據可視化功能結構圖

圖8 網站首頁

4 熱點新聞發布系統測試與分析

4.1 測試環境

該系統的運行的性能會受到實驗機器的網絡與機器硬件性能的影響,本節列舉測試環境。

表1 硬件環境

由于條件限制,在測試系統時,本文只使用兩臺機器。

表2 軟件環境

4.2 測試

在項目完成后需要對系統是否符合最初的需求做出一定的測試,系統測試就是對當前整個項目的檢驗。檢查項目中的不足的地方。之后再進一步優化系統。本節將依據系統測試規則設計一系列測試用例,以系統測試的一般方法來測試新聞爬蟲系統。

發現系統中的漏洞與缺陷是軟件測試的主要目的,軟件測試在軟件的整個開發過程中也占據著舉足輕重的地位。因此本節對系統關鍵功能設計相應的測試用例:數據爬取模塊爬取數據;數據爬取模塊周期爬取數據;數據可視化模塊分析圖;數據可視化模塊新聞內容展現;數據可視化模塊關鍵字檢索近期詞頻變化。

根據測試用例將設計相應的預設條件、輸入、操作步驟以及預期輸出以判斷相應功能模塊能否正常運行,如表3所示:

表3 測試用例一

在測試用例的幫助下對整個系統進行了詳盡的測試,之后對于各別測試不通過的系統功能模塊的測試結果分析,獲得照成測試不通過的原因,對其中照成錯誤的代碼進行仔細的調試與修改。在之后對功能模塊不斷的整合解耦下終于使得所有測試用例都通過了考驗,均達到了測試的預期結果。

5 結束語

在這網絡高度發達的時代,每日信息都在爆炸式的增長。而對于如何獲取其中有用的信息也越來越被人們所重視,對于此網絡爬蟲正扮演著越來越重要的角色,它將成為分析信息數據的利器。本文所設計實現的新聞爬蟲系統,參考綜合了現在主流的幾種爬蟲技術路線。通過編寫爬蟲程序實現了對于新聞內容、標題、發布時間等數據的抓取,使用Chart.js結合Python的Jinja2模板引擎以及Bootstrap/AJAX/JQurey等相關技術實現了數據可視化功能,兼顧用戶交互方式的多樣性以及系統的跨瀏覽器兼容性。

猜你喜歡
頁面系統
微信群聊總是找不到,打開這個開關就好了
大狗熊在睡覺
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
刷新生活的頁面
保健醫苑(2022年1期)2022-08-30 08:39:14
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
半沸制皂系統(下)
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
同一Word文檔 縱橫頁面并存
主站蜘蛛池模板: 午夜欧美在线| 日本午夜三级| 99久久精品国产麻豆婷婷| 久久精品丝袜| 久久久久久久久18禁秘| 日韩色图区| 久久国产拍爱| 欧美国产精品不卡在线观看 | 亚洲国产黄色| 色婷婷在线播放| 国产综合精品日本亚洲777| 国产精品自在在线午夜区app| 久久中文字幕不卡一二区| 免费无码AV片在线观看国产| 亚洲国产成人综合精品2020| 日韩av在线直播| 国产主播一区二区三区| 久久青青草原亚洲av无码| 婷婷午夜天| 中美日韩在线网免费毛片视频 | 国产SUV精品一区二区| 伊人网址在线| 在线亚洲精品自拍| 国产第一页第二页| 色爽网免费视频| 精品一区国产精品| 成人福利在线免费观看| 国产一级在线观看www色| 亚洲精品无码久久毛片波多野吉| 免费a级毛片视频| 久久综合五月婷婷| 午夜电影在线观看国产1区| 日本人真淫视频一区二区三区| 亚洲美女一级毛片| 欧美日韩国产成人高清视频| av午夜福利一片免费看| 无码专区国产精品第一页| 黄色污网站在线观看| 性69交片免费看| 欧美日韩国产精品综合| 久热中文字幕在线观看| 国产免费久久精品99re不卡| 免费三A级毛片视频| 亚洲免费人成影院| 国产无码精品在线播放| h网址在线观看| 国内精自视频品线一二区| 国模粉嫩小泬视频在线观看| 欧美成在线视频| 自拍欧美亚洲| 超碰91免费人妻| 欧美日韩福利| 亚洲视频免费播放| 人妻丰满熟妇av五码区| 欧美人与性动交a欧美精品| 成年人午夜免费视频| 亚洲国模精品一区| 亚洲AV无码不卡无码| 国产剧情国内精品原创| www.91在线播放| 国产精品成| 国产精品精品视频| 亚洲日韩精品无码专区97| 五月婷婷综合网| 一级片一区| 综合亚洲网| 永久免费无码成人网站| 午夜高清国产拍精品| 99偷拍视频精品一区二区| 久久久久亚洲AV成人人电影软件| 在线精品亚洲一区二区古装| 国产成年无码AⅤ片在线| a毛片基地免费大全| 日本免费a视频| 日韩专区第一页| 欧美黄色a| 亚洲人在线| 欧美在线伊人| 久久精品丝袜| 国产亚洲精品yxsp| 高清无码不卡视频| 67194在线午夜亚洲|