用Python統計新浪微博各種表情使用頻率

用新浪微博API積累了微博廣場的1.4萬條數據,我選擇了21個字段輸出爲TXT文件,想用Python稍微處理一下,統計一下這1.4萬條微博裏面表情使用情況,統計結構在最後。


無聊的時候用了下新浪JAVA版的API,對JAVA還不熟悉,但是稍微改一下還是沒問題的,數據保存爲TXT文件,再用Python處理,JAVA部分很簡單,Python部分只涉及到表情的正則提取,都不好意思寫出來了。


1、調用新浪JAVA API下載微博廣場數據
步驟思路:
初始化API的Weibo類,設置Token後,設置下載間隔,然後重複調用getPublicTimeline()函數就可以了,下面是主要類的代碼:


這個不是完整的代碼,沒有初始化暫停間隔,可以掠過,很簡單。





2、數據格式:



要取得數據就是微博內容,先練一下手玩玩。


3、Python處理數據
目標:查看微博用戶表情使用情況,暫時只分性別,如果積累了合適的數據後可以分析各個時間段人們愛用哪種表情。


步驟:
$ 讀取TXT文件,遞歸處理每一行
$ 單獨提取出微博字段,正則提取表情字段,同時把性別提取出來,放到一個dict裏面,dict的格式是:表情/女性使用頻率/男性使用頻率,遞歸處理,累積頻率
$ 把結果寫入到文件
注意:Python正則提取中文部分,先解碼成unicode編碼,再正則提取,表情的標誌是[],雖有誤差,但無大礙。


代碼:
__collection函數是處理函數,返回處理結果(dict)






腳本運行結果:




把結果放到EXCEL裏面重新排序,得到如下結果:



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章