亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Python爬蟲網(wǎng)站數(shù)據(jù)分析系統(tǒng)設(shè)計與實(shí)現(xiàn)*

        2022-11-10 06:40:06楊孟姣杜棋東
        計算機(jī)時代 2022年11期
        關(guān)鍵詞:可視化小說用戶

        楊孟姣,杜棋東

        (1.湖南省石門縣第一中學(xué),湖南 常德 415300;2.廣州鐵路職業(yè)技術(shù)學(xué)院)

        0 引言

        伴隨著互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,中國正迎來從IT時代到DT 時代的變革。《2020 中國網(wǎng)絡(luò)文學(xué)藍(lán)皮書》顯示,2020 年中國網(wǎng)絡(luò)文學(xué)用戶規(guī)模達(dá)4.67 億人,全網(wǎng)作品累計約2800萬部,全國文學(xué)網(wǎng)站日均更新字?jǐn)?shù)超1.5 億,全年累計新增字?jǐn)?shù)超過500 億。由此可見,網(wǎng)絡(luò)小說平臺在運(yùn)營過程中會產(chǎn)生大量讀者、作者、類別、熱度、評分等信息。

        面對日益增加的數(shù)據(jù)壓力,網(wǎng)絡(luò)小說的平臺流量成本不斷提升,平臺在老用戶維持、新用戶吸引、網(wǎng)站點(diǎn)擊率等方面逐漸暴露出諸多問題[1]。由于新媒介的不斷崛起,讀者對網(wǎng)絡(luò)小說平臺的要求也越來越高,用戶閱讀時長呈現(xiàn)離散化分布,導(dǎo)致網(wǎng)絡(luò)小說平臺行業(yè)獨(dú)占率下滑,用戶爭奪日趨白熱化。

        因此,對小說平臺產(chǎn)生的海量數(shù)據(jù)進(jìn)行整合分析勢在必行。一方面,有利于指導(dǎo)網(wǎng)絡(luò)小說平臺改編影視,降低運(yùn)營成本,提高收益[2];另一方面,便于讀者和新手更加快捷有效地發(fā)現(xiàn)感興趣的小說題材。

        本文以“我愛小說網(wǎng)”為研究案例,通過開發(fā)一個海量數(shù)據(jù)分析系統(tǒng),旨在提高用戶體驗(yàn),推動小說網(wǎng)絡(luò)平臺發(fā)展。平臺的用戶主要包括小說閱讀用戶、小說網(wǎng)站管理者、新入行的網(wǎng)絡(luò)小說作者等。通過爬取小說網(wǎng)站信息,并對數(shù)據(jù)進(jìn)行分析和處理,有助于用戶找到當(dāng)前比較流行的網(wǎng)絡(luò)小說類型、各種類型小說所適合的篇幅等。

        1 系統(tǒng)概述

        本系統(tǒng)設(shè)計的目的在于使用戶便捷高效地采集到需要的數(shù)據(jù),并將數(shù)據(jù)清洗之后進(jìn)行分析和可視化呈現(xiàn)[3]。因此,本文將系統(tǒng)的功能需求分為數(shù)據(jù)采集部分、數(shù)據(jù)存儲部分、系統(tǒng)登錄部分、后臺管理部分、數(shù)據(jù)可視化交互部分。以下每個功能模塊的需求分析。

        ⑴數(shù)據(jù)采集部分

        數(shù)據(jù)采集功能只有管理員才擁有權(quán)限操作,普通用戶無法操作數(shù)據(jù)采集。因此,數(shù)據(jù)采集模塊是在服務(wù)器端上進(jìn)行操作的。啟動后,系統(tǒng)會生成相應(yīng)的任務(wù)采集數(shù)據(jù)表,然后啟動引擎開始爬取網(wǎng)頁數(shù)據(jù)并存儲到對應(yīng)MySQL 數(shù)據(jù)庫表中。當(dāng)任務(wù)沒有可爬取的網(wǎng)址時,任務(wù)結(jié)束并返回任務(wù)結(jié)束信號[4]。

        ⑵數(shù)據(jù)存儲部分

        數(shù)據(jù)存儲部分主要是用來存儲爬取小說的文本數(shù)據(jù),包括ID、小說類型、小說名稱、更新的小說章節(jié)、小說作者、小說字?jǐn)?shù)、小說狀態(tài)、發(fā)布時間、點(diǎn)擊量和推薦票數(shù)量等。除此之外,還包括系統(tǒng)登錄賬號以及密碼和用戶的權(quán)限管理。

        ⑶系統(tǒng)登錄部分

        當(dāng)用戶對相關(guān)的平臺接口進(jìn)行訪問時,首先進(jìn)入系統(tǒng)的登錄界面。在該界面中,包括有兩個功能模塊:注冊與登錄模塊[5]。如果當(dāng)前用戶屬于未注冊用戶,需要用戶先進(jìn)行注冊,得到系統(tǒng)管理員的授權(quán)之后才能進(jìn)入系統(tǒng)內(nèi)部。若當(dāng)前用戶屬于已經(jīng)注冊的老用戶,可以直接通過填寫用戶名和密碼完成登錄。

        ⑷后臺管理部分

        前端界面的數(shù)據(jù)查詢部分、小說數(shù)據(jù)詳情展示部分和數(shù)據(jù)分析可視化部分都需要先從后臺管理獲取對應(yīng)的圖表數(shù)據(jù),而后臺數(shù)據(jù)管理則是從MySQL 數(shù)據(jù)庫獲取全部數(shù)據(jù),管理員用戶可以對數(shù)據(jù)清洗沒清洗掉的數(shù)據(jù)進(jìn)行管理操作,以求前端展示的數(shù)據(jù)都是有效數(shù)據(jù),并可以根據(jù)需求調(diào)整排序方式,以及前端頁面數(shù)據(jù)的展示數(shù)量。

        ⑸數(shù)據(jù)可視化交互部分

        數(shù)據(jù)可視化交互部分只針對普通用戶,用戶可以自由選擇想要查看的圖表信息。且用戶可以下載所呈現(xiàn)出來的圖表信息并保存至本地,方便隨時查閱。

        以上各部分模塊獨(dú)立開發(fā)、低耦合、適合于團(tuán)隊敏捷開發(fā),更加方便后期系統(tǒng)的升級和運(yùn)維。

        2 系統(tǒng)架構(gòu)設(shè)計

        完成系統(tǒng)分析后,需要設(shè)計系統(tǒng)的總體架構(gòu),主要分為表示層、業(yè)務(wù)層和數(shù)據(jù)層。分別使用Django Web 框架和Django Admin 框架來實(shí)現(xiàn)。在系統(tǒng)功能需求分析的基礎(chǔ)上,結(jié)合數(shù)據(jù)采集系統(tǒng)的架構(gòu)設(shè)計,將系統(tǒng)分為五個部分,主要有數(shù)據(jù)采集部分、數(shù)據(jù)存儲部分、系統(tǒng)登錄部分、后臺管理部分、數(shù)據(jù)可視化交互部分。系統(tǒng)結(jié)構(gòu)圖如下所示:

        下面簡要介紹系統(tǒng)的體系結(jié)構(gòu),總體框架是Python Web 的Browser/Server 架構(gòu),主要包含數(shù)據(jù)采集、數(shù)據(jù)分析與展示。其中數(shù)據(jù)采集部分采用Python 的Scrapy框架,后臺存儲數(shù)據(jù)采用的是傳統(tǒng)的關(guān)系型數(shù)據(jù)庫MySQL,后臺管理采用Django admin,前端采用Django Web 框架,主要用到CSS、JS、HTML等語言。體系結(jié)構(gòu)圖示例如圖1所示。

        業(yè)務(wù)邏輯層主要是由Django 框架和Scrapy 框架這兩部分組成。Django Web負(fù)責(zé)實(shí)現(xiàn)業(yè)務(wù)邏輯,從后臺獲取數(shù)據(jù)、通過統(tǒng)計分析之后,再到前端展示。

        而后臺的數(shù)據(jù)則是從數(shù)據(jù)庫獲取的,后臺的數(shù)據(jù)管理請求可以修改后臺的數(shù)據(jù)并保存下來,實(shí)現(xiàn)對數(shù)據(jù)庫的增刪改查(CRUD)。數(shù)據(jù)采集Scrapy 框架包括以下這些模塊功能:URL獲取功能、數(shù)據(jù)響應(yīng)內(nèi)容功能、數(shù)據(jù)提取功能、數(shù)據(jù)清洗功能和數(shù)據(jù)持久化功能等[6]。

        數(shù)據(jù)層主要使用傳統(tǒng)的關(guān)系型數(shù)據(jù)庫MySQL作為數(shù)據(jù)持久化層。

        3 系統(tǒng)功能模塊設(shè)計

        ⑴數(shù)據(jù)采集

        數(shù)據(jù)采集模塊主要包含URL 獲取功能、數(shù)據(jù)響應(yīng)內(nèi)容功能、數(shù)據(jù)提取功能、數(shù)據(jù)清洗功能和數(shù)據(jù)持久化功能等,數(shù)據(jù)采集的功能模塊圖如圖2所示。

        ⑵數(shù)據(jù)分析與展示

        數(shù)據(jù)分析與展示模塊主要有用戶管理、數(shù)據(jù)分析與展示、數(shù)據(jù)維護(hù)等功能,其中用戶管理模塊有用戶注冊和用戶登錄,數(shù)據(jù)分析與展示模塊包括:小說類別狀態(tài)圖、每年小說類別數(shù)量動態(tài)占比圖、各類小說平均字?jǐn)?shù)圖、每年小說占比圖、詞云圖和小說狀態(tài)圖等,數(shù)據(jù)維護(hù)則是通過數(shù)據(jù)查詢查找到需要維護(hù)的數(shù)據(jù)進(jìn)行維護(hù)操作[7],數(shù)據(jù)分析與展示模塊功能設(shè)計圖如圖3所示。

        圖3 數(shù)據(jù)分析與展示功能模塊圖

        4 系統(tǒng)實(shí)現(xiàn)

        整體的系統(tǒng)實(shí)現(xiàn)分為四個模塊,分別為數(shù)據(jù)采集模塊、數(shù)據(jù)清洗模塊、系統(tǒng)后臺管理模塊以及小說數(shù)據(jù)管理模塊。

        ⑴數(shù)據(jù)采集模塊

        Scrapy 框架接受到數(shù)據(jù)采集的任務(wù)之后,負(fù)責(zé)對小說網(wǎng)站進(jìn)行數(shù)據(jù)采集。經(jīng)過頁面的請求到URLconf,再到相對應(yīng)View 函數(shù),View 模塊負(fù)責(zé)整個采集任務(wù)的配置信息,并發(fā)布啟動請求。

        ⑵數(shù)據(jù)清洗模塊

        在爬取的過程中,無法保證每個字段的數(shù)據(jù)信息格式是正常的,但是我們每一列數(shù)據(jù)后續(xù)所需要使用的信息必須是一致的,所以在進(jìn)行后續(xù)的可視化操作或者模型分析時,需要確保當(dāng)前的每一列的數(shù)據(jù)維度是正確的。對于系統(tǒng)爬取到的數(shù)據(jù),并不能直接滿足系統(tǒng)所要分析的內(nèi)容,所以需要通過對數(shù)據(jù)進(jìn)行清洗之后,才能將數(shù)據(jù)完整的與模型進(jìn)行適配。

        ⑶系統(tǒng)后臺管理模塊

        后臺管理是針對管理員用戶設(shè)計,經(jīng)過數(shù)據(jù)采集模塊爬取數(shù)據(jù),清洗數(shù)據(jù)和持久化存儲數(shù)據(jù)之后。采集到的數(shù)據(jù)依舊存在一些垃圾數(shù)據(jù)問題,用Django Admin 框架設(shè)計實(shí)現(xiàn)后臺管理模塊,可以在后臺實(shí)現(xiàn)對小說數(shù)據(jù)的管理和維護(hù)操作,通過對小說詳情數(shù)據(jù)表各個表頭的正序和倒序排列來實(shí)現(xiàn)對小說垃圾數(shù)據(jù)的快速查找,并且可以對系統(tǒng)用戶進(jìn)行認(rèn)證和授權(quán)管理操作,包括對普通用戶授權(quán)、資料管理和管理員用戶的資料管理等。

        ⑷小說數(shù)據(jù)管理模塊

        圖4 部分?jǐn)?shù)據(jù)分析界面

        管理員可以在后臺對存儲到MySQL 數(shù)據(jù)庫中的小說數(shù)據(jù)直接進(jìn)行管理操作,主要任務(wù)是去除一些數(shù)據(jù)清洗時沒有清洗掉的垃圾數(shù)據(jù)。為了方便且快速查找,小說詳情表每一個表頭都能夠?qū)崿F(xiàn)正序和倒序排列。在數(shù)據(jù)管理模塊,對于清洗后的數(shù)據(jù)會做一些可視化呈現(xiàn),其中部分?jǐn)?shù)據(jù)分析界如圖4 所示。圖4采用柱狀圖的形式呈現(xiàn),所有的小說都可以劃分為完結(jié)跟連載兩種了類別,能明顯看到完結(jié)數(shù)量最高是“玄幻奇幻”,連載數(shù)量最高為“都市生活”。

        5 結(jié)束語

        網(wǎng)絡(luò)小說在互聯(lián)網(wǎng)時代呈現(xiàn)出海量數(shù)據(jù)且內(nèi)容繁雜,想獲取準(zhǔn)確高價值的數(shù)據(jù)并不容易,由此對網(wǎng)絡(luò)數(shù)據(jù)采集與分析提出更高的要求。網(wǎng)絡(luò)爬蟲技術(shù)可以高效獲取并整合這些海量的數(shù)據(jù),為用戶提供相關(guān)高質(zhì)量的數(shù)據(jù)信息[8]。本文設(shè)計開發(fā)的小說網(wǎng)數(shù)據(jù)爬取分析系統(tǒng),通過Scrapy 爬蟲框架采集數(shù)據(jù),利用Django 框架管理后臺并進(jìn)行數(shù)據(jù)分析與展示,使得用戶可以直觀的獲取到自己想要的信息。測試表明,該系統(tǒng)具有高效獲取、分析和處理網(wǎng)絡(luò)小說平臺數(shù)據(jù)的功能,具有較高的實(shí)用價值。

        猜你喜歡
        可視化小說用戶
        叁見影(微篇小說)
        紅豆(2022年9期)2022-11-04 03:14:42
        遛彎兒(微篇小說)
        紅豆(2022年9期)2022-11-04 03:14:40
        基于CiteSpace的足三里穴研究可視化分析
        勸生接力(微篇小說)
        紅豆(2022年3期)2022-06-28 07:03:42
        基于Power BI的油田注水運(yùn)行動態(tài)分析與可視化展示
        云南化工(2021年8期)2021-12-21 06:37:54
        基于CGAL和OpenGL的海底地形三維可視化
        那些小說教我的事
        “融評”:黨媒評論的可視化創(chuàng)新
        傳媒評論(2019年4期)2019-07-13 05:49:14
        關(guān)注用戶
        商用汽車(2016年11期)2016-12-19 01:20:16
        關(guān)注用戶
        商用汽車(2016年6期)2016-06-29 09:18:54
        免费看奶头视频的网站| 我的极品小姨在线观看| 青青草中文字幕在线播放| 一区二区三区日韩亚洲中文视频| 成人特黄a级毛片免费视频| 国产精品天天狠天天看| 成人无码网www在线观看| 口爆吞精美臀国产在线| 全亚洲高清视频在线观看 | 精品少妇一区二区三区视频| 视频二区 无码中出| 99精品国产综合久久麻豆| 欧美真人性野外做爰| 国产成人精品电影在线观看18 | 亚洲av天天做在线观看 | 亚洲成a人片在线观看中| 熟女免费视频一区二区| 一道本久久综合久久鬼色| 免费无码一区二区三区蜜桃| 一本大道香蕉视频在线观看| 亚洲成人黄色av在线观看| 精品国产一区二区三区三级| 国产97在线 | 日韩| 中文字幕一区二区三区人妻少妇| 久久久久亚洲av成人网址| 亚洲女同人妻在线播放| 蜜桃91精品一区二区三区| 色avav色av爱avav亚洲色拍| 男人天堂免费视频| 日本中文字幕人妻精品| 日本伊人精品一区二区三区| 爱情岛永久地址www成人| 无码精品一区二区三区超碰 | 中文字幕一区日韩精品| 国产午夜精品久久久久免费视 | 国内揄拍国内精品| 亚洲中文字幕第二十三页| 日本岛国一区二区三区四区| 国产乱妇无乱码大黄aa片| 人人看人人做人人爱精品| 亚洲视一区二区三区四区|