練習乙個從資料採集分析到展示的過程

2021-10-22 02:13:43 字數 3119 閱讀 6191

很早之前寫的乙個**監測的小東西,雖然最終沒有用到。

首頁資料總覽

熱度排行榜top10

趨勢觀察

詞云展示

lda話題分析

簡單分為三部分:資料採集、資料分析、資料展示用python寫的爬蟲

爬蟲結構

用到的庫

各平台的反扒很多文章都有方法介紹,我是各個擊破,綜合到一起來著。

download模組

資料儲存,我用的是mysql

#資料統一格式

mdata =

如上儲存資訊格式儲存nosql資料庫中更為方便

spidermain

排程模組,將前面三個模組綜合起來

**量:爬蟲部分大概900行**

本地除錯完成,就可上傳linux伺服器,設定定時任務,每天抓取,做為資料分析的基礎

原始資料如上圖

資料標記(id)是拼接兩個欄位的值(plantform+title),大概率保證了資訊的唯一性,同時也對同一title的資訊內容更新比較友好。

儲存內容欄位時需要對一些特殊字元過濾處理,一方面防止引起編碼錯誤,和sql語句錯誤,例如「#」會當成注釋

儲存時間均使用時間戳儲存,取出時再轉換成日期格式,

資料查重和更新id使庫里的資料具有唯一性,儲存資料時遍歷比較id即可,若id已存在,則進行更新,更新改變的資料如事件熱度、url、comments等易改變的字段

update_sql =

"update set " \

"feeling=''," \

"hotnum=''," \

"url=''," \

"comments='' " \

"where " \

"myid=''" \

.format

(tablename=self.__tablename,

feeling=feeling,

v0=item[

'hotnum'],

v1=item[

'url'],

v2=comments,

v3=item_str)

資料統計根據字段內容分組統計,例如我的plantform欄位下有weibo、weixin、tieba、zhihu等幾個內容,按此查詢group by plantform,幾個平台的資料總覽就出來了。

根據時間統計 統計每天的資料,以此觀察資訊發布的趨勢,情緒態度的變化趨勢。還寫了乙個py指令碼,將mysql裡每天的資訊做統計建新表,提高查詢資訊效率。如下新建表字段:

詞頻統計將title、comment欄位下的內容查詢先使用分詞工具jieba分詞、去停用詞等預處理,統計即可,匯入使用者自定義詞典分詞更準確一些。

情感分析一是使用snownlp,但是結果很難讓人滿意。

二是使用情感詞典(玻森情感詞典),如下,會有11萬詞的評分,使用使就是遍歷該詞典,結果得分一般是加和計算。

我對比後選擇了後者。

話題聚類將資訊進行主題聚類,發現討論的話題,

這裡我使用的是lda主題模型,目標是找到每一篇文件的主題分布和每乙個主題中詞的分布,根據每個主題詞的分布,我們加以概括這個主題,該主題下的文章內容我稱之為乙個討論話題。

再處理文字之前先進行文字預處理,切詞、去停用詞,標記文件,引數調整,再訓練模型即可,過程原理大家感興趣可以找相關文件看。

**量統計分析部分大概500行**

web頁面來展示內容

圖表更能直觀的反映資料變化趨勢,善用圖表會有奇蹟般效果。

首頁我放置的是乙個餅圖,pycharts實現,查詢情緒指數,將情緒指數在某個閾值內劃分範圍,分出積極、中性和消極三個等級,右側放置各平台抓取的資訊總數。每個圖表連線新的頁面展示該平台的詳細資料。

趨勢圖是select新錶中的資料,填充到pycharts例項中,將時間戳轉換為日期格式倒序排列,生成時間變化趨勢圖。

詞云部分將title、comments文字資訊查詢,做詞頻統計,然後再將詞-詞頻資料填充到pycharts詞云例項。

使用flask做web頁面展示、pycharts作圖,現學現用,不難。

**量該部分不算前端**只有100行。

總體**量1600行**,哈哈哈!

每一部分的東西都是之前幾個學期學的東西,零零散散組了起來。

乙個遠端資料採集系統的實現

乙個遠端資料採集系統的實現,包括 遠端資料採集,gprs資訊傳輸,伺服器資料處理,瀏覽器資料展現和操作。遠端資料採集 採集天然河道水位資料,採用成品壓力式感測器,沒有採集單元 rtu gprs dtu的rs485介面直接接感測器rs485介面。電源 25w太陽能電池板 充放電控制器 25ah免維護鉛...

乙個晶元的誕生 從需求到實物

我們用的手機電腦最重要的部分就是裡面的晶元,本文試圖講講晶元從設計到製造出來的過程。水平有限,將就看吧。任何產品都是為了滿足需求,晶元也是如此,首先我們要知道為啥需要晶元。一台計算機要工作需要軟體和硬體的協同合作,硬體包括晶元和一大堆外設,我們只關注晶元部分,可以認為軟體就是直接執行在晶元之上的。我...

對於防採集的乙個思路

最近,網路採集技術很是流行,利用採集技術,可以直接將其它站點的所有資料以及檔案全都存入自己的資料庫和目錄。很是不幸,本人的blog居然也被某採集狂盯上,以致iis數直接超出本人的小站的極限,到現在還是不能訪問,剛才搜了一下防採集的相關資料,大體有下面幾種方法 這幾種方法除了使用多模版,我覺得其它幾種...