国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Python的新浪微博用戶信息爬取與分析

2019-11-01 09:10:59鄧文萍
關(guān)鍵詞:冪律爬蟲(chóng)寶藏

鄧文萍

摘要:本文設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)微博用戶信息爬取與分析系統(tǒng),利用Cookie實(shí)現(xiàn)了用戶的模擬登錄,使用Python語(yǔ)言的Rquests、lxml等函數(shù)庫(kù),爬取、處理了該微博用戶數(shù)據(jù),并以“央視綜藝國(guó)家寶藏”為例,從微博發(fā)布動(dòng)作偏好、微博信息特征、微博關(guān)鍵詞等方面展開(kāi)了分析,獲取了一些有趣的發(fā)現(xiàn),為進(jìn)一步用戶分析與畫像打下基礎(chǔ)。

關(guān)鍵詞:新浪微博;爬取分析;Python

中圖分類號(hào):TP393 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2019)07-0096-03

0 引言

新浪微博是目前我國(guó)最大的短消息社交平臺(tái),據(jù)新浪微博2017年全年財(cái)報(bào)稱,截至2017年12月,微博月活躍用戶增至3.92億。社交用戶的增多,意味著信息的極具爆炸,基于微博數(shù)據(jù)的社交用戶行為分析與畫像引起了人們的關(guān)注[1]。該技術(shù)能夠?qū)τ脩暨M(jìn)行畫像,用于社交群體發(fā)現(xiàn)[2]、個(gè)性用戶發(fā)現(xiàn)[3]等。

本文使用Python語(yǔ)言,通過(guò)模擬用戶登錄,實(shí)現(xiàn)一種針對(duì)新浪微博的爬蟲(chóng),并對(duì)獲得的數(shù)據(jù)進(jìn)行有效地分析。該文設(shè)計(jì)并實(shí)現(xiàn)了新浪微博爬蟲(chóng)程序,以微博用戶“央視綜藝國(guó)家寶藏”為例,對(duì)他發(fā)布的微博內(nèi)容進(jìn)行了全部抓取,并從微博發(fā)布行為、微博信息特征、微博關(guān)鍵詞等方面,進(jìn)行了數(shù)據(jù)分析,為用戶分析與畫像打下基礎(chǔ)。

1 爬蟲(chóng)系統(tǒng)設(shè)計(jì)

該爬蟲(chóng)程序的工作流程如圖1所示,主要步驟為:

(1)登錄微博:新浪微博要求用戶訪問(wèn)微博數(shù)據(jù)之前必須登錄,那么爬蟲(chóng)程序面臨的首要任務(wù)是模擬登錄。本文利用Cookie的特性,事先通過(guò)瀏覽器的方式,登錄新浪微博,并正確輸入用戶名、口令,從而事先瀏覽器的登錄;當(dāng)成功登陸后,新浪微博服務(wù)器會(huì)記錄登錄的狀態(tài),經(jīng)加密后,使用Response的方式,發(fā)送給客戶端,從而存儲(chǔ)于本地客戶端的Cookie中。當(dāng)本文編寫的Python爬蟲(chóng),需要登錄新浪微博時(shí),首先讀取已存儲(chǔ)于本地的Cookie,并發(fā)送給新浪微博服務(wù)器。而該服務(wù)器檢查這個(gè)Cookie,可以認(rèn)定客戶端的合法身份,從而實(shí)現(xiàn)用戶對(duì)新浪微博的成功登錄。(2)訪問(wèn)待抓取頁(yè)面:該模塊訪問(wèn)被抓取微博用戶的各類信息界面,利用Requests庫(kù)下載待抓取頁(yè)面的html代碼。(3)下載、解析、抽取信息:使用lxml等python庫(kù)解析頁(yè)面,并根據(jù)預(yù)先定制的規(guī)則,抽取有關(guān)信息。(4)根據(jù)第(3)步驟的信息提取結(jié)果,如若信息內(nèi)具有下一次待抓取的頁(yè)面鏈接,則回至網(wǎng)頁(yè)下載模塊,重新進(jìn)行下載、解析。(5)保存至數(shù)據(jù)庫(kù):待抓取完畢后,將所有信息保存至數(shù)據(jù)庫(kù)。

2 微博用戶數(shù)據(jù)分析

本文針對(duì)新浪微博用戶“央視綜藝國(guó)家寶藏”進(jìn)行研究分析,抓取了其全部微博內(nèi)容。該微博用戶ID號(hào)6339534350,2017年8月22日第一次發(fā)布微博消息;截至2019年7月29日,它已發(fā)布了1490條信息,轉(zhuǎn)發(fā)了339條消息,有粉絲2260078人,累計(jì)獲得1481948點(diǎn)贊數(shù)、2360089轉(zhuǎn)發(fā)量、462758評(píng)論數(shù)。

2.1 微博發(fā)布行為分析

該部分主要研究“央視綜藝國(guó)家寶藏”發(fā)布微博信息的次數(shù)和時(shí)間等因素,深入分析它的微博發(fā)布行為特征。如圖2中所示,該圖為隨時(shí)間變化的微博發(fā)布次數(shù),其橫坐標(biāo)軸為日期,范圍為2017年8月22日至2019年7月29日;縱坐標(biāo)軸則為微博消息的發(fā)布次數(shù)。

從圖中可以看出,該微博用戶發(fā)布微博消息有明顯的規(guī)律性,它幾乎每天都發(fā)送微博消息,但有兩個(gè)明顯的高峰期,分別為2017年12月至2018年2月期間和2018年12月至2019年2月。這兩個(gè)高峰期是與《國(guó)家寶藏·第一季》和《國(guó)家寶藏·第二季》的播出時(shí)間是重合的,其中《國(guó)家寶藏·第一季》自2017年12月3日起在中央電視臺(tái)播出,共有十期節(jié)目,每周日播出一期,于2018年2月11日結(jié)束;同樣地,《國(guó)家寶藏·第二季》自2018年12月9日起播出,共有十期節(jié)目,每周日播出一期,于2019年2月2日結(jié)束。在這兩個(gè)節(jié)目播出周期內(nèi),平均每日微博發(fā)送量分別為8.69、6.57,遠(yuǎn)高于其他時(shí)期。

如圖3所示,橫坐標(biāo)軸為發(fā)表時(shí)間,縱坐標(biāo)軸為微博發(fā)布的次數(shù)。從圖中可以看出,該微博用戶發(fā)布微博信息的時(shí)間集中在每日的9時(shí)到22時(shí),而在在23時(shí)至次日8時(shí)的時(shí)間段內(nèi)沒(méi)有發(fā)表任何內(nèi)容。同時(shí),還可以看出整點(diǎn)是發(fā)布微博的高峰,12時(shí)、14時(shí)、16時(shí)、18時(shí)、20時(shí)、22時(shí)各發(fā)表了60次、69次、65次、73次、49次和46次。

2.2 微博信息分析

2.2.1 點(diǎn)贊數(shù)分析

通過(guò)按照微博發(fā)布的先后,給微博消息進(jìn)行排序,列出每條微博的點(diǎn)贊數(shù),如圖4所示。微博消息的總點(diǎn)贊數(shù)均值為994.60,總體標(biāo)準(zhǔn)差為1868.26,顯示著各微博點(diǎn)贊數(shù)極不均衡。從圖4可以看出,個(gè)別微博的點(diǎn)贊數(shù)極高,高于2萬(wàn)點(diǎn)贊數(shù)的微博數(shù)目為6個(gè),高于1萬(wàn)低于2萬(wàn)點(diǎn)贊數(shù)的微博數(shù)目為3個(gè),而點(diǎn)贊數(shù)低于1000的微博占總體的74.77。

為了直觀地觀察這一現(xiàn)象,本文將微博序號(hào)按照點(diǎn)贊數(shù)大小進(jìn)行排序,如圖5所示。從圖可以看出,該圖形從橫坐標(biāo)一開(kāi)始時(shí),占據(jù)較高縱坐標(biāo),接著極具下降,形成拖著長(zhǎng)長(zhǎng)尾巴的形狀。這說(shuō)明微博點(diǎn)贊數(shù)服從冪律分布[4],即少數(shù)高贊微博受到人們的極大關(guān)注,而大部分微博受關(guān)注度一般。該分布的一個(gè)通俗解釋就是馬太效應(yīng),即窮者越窮富者越富。

2.2.2 評(píng)論數(shù)分析

圖6中,橫坐標(biāo)為按時(shí)間排序的微博序號(hào),縱坐標(biāo)為該微博對(duì)應(yīng)的評(píng)論數(shù)。微博消息的總評(píng)論數(shù)均值為310.58,總體標(biāo)準(zhǔn)差為3091.64,顯示著各微博評(píng)論數(shù)極不均衡。從該圖可以看出,評(píng)論數(shù)高于1萬(wàn)的微博數(shù)目為1個(gè),高于5千低于1萬(wàn)的微博數(shù)目為4個(gè),而評(píng)論數(shù)低于300的微博占總體的84.56%。這說(shuō)明微博評(píng)論數(shù)同樣服從冪律分布。

圖7中,橫坐標(biāo)為按時(shí)間排序的微博序號(hào),縱坐標(biāo)為該微博對(duì)應(yīng)的轉(zhuǎn)發(fā)數(shù)。微博消息的總轉(zhuǎn)發(fā)數(shù)均值為1583.95,總體標(biāo)準(zhǔn)差為22209.09,顯示著各微博評(píng)論數(shù)比點(diǎn)贊數(shù)和評(píng)論數(shù)更不均衡。從該圖可以看出,轉(zhuǎn)發(fā)數(shù)高于10萬(wàn)的微博數(shù)目為3個(gè),高于1萬(wàn)低于10萬(wàn)的微博數(shù)目為30個(gè),而轉(zhuǎn)發(fā)數(shù)低于1500的微博占總體的91.07%。

從微博的點(diǎn)贊數(shù)、評(píng)論數(shù)和轉(zhuǎn)發(fā)數(shù)分析,我們可以看出微博的平均值還是比較高的,說(shuō)明”央視綜藝國(guó)家寶藏”用戶的影響力巨大,同時(shí)也能看到這三個(gè)值極不均衡,服從冪律分布。

2.3 微博關(guān)鍵詞分析

為了更好地分析微博內(nèi)容,本文對(duì)抓取到的微博內(nèi)容進(jìn)行關(guān)鍵詞抽取與展示。本文使用了jieba分詞技術(shù)[5],處理得到微博內(nèi)容的所有詞組,并去除停用詞,接著使用wordcloud函數(shù)庫(kù),制作了詞云。如圖8所示,主要的關(guān)鍵詞有“國(guó)家”、“寶藏”、“CCTV”、“國(guó)寶”、“博物館”、“頻道”、“中國(guó)”、“視頻”等詞。

3 結(jié)語(yǔ)

該文設(shè)計(jì)并實(shí)現(xiàn)了針對(duì)新浪微博用戶的爬蟲(chóng)程序,并對(duì)抓取到的信息進(jìn)行分析,以“用戶為例,從微博發(fā)布行為、微博信息特征、微博關(guān)鍵詞等四個(gè)方面,進(jìn)行了數(shù)據(jù)研究與分析。經(jīng)過(guò)數(shù)據(jù)分析,本文得到如下信息:(1)微博用戶發(fā)布的有著較為明顯的整點(diǎn)發(fā)布偏好;(2)博主的微博的點(diǎn)贊數(shù)、評(píng)論數(shù)以及轉(zhuǎn)發(fā)數(shù)服從冪律分布;(3)博主發(fā)布的微博內(nèi)容的關(guān)鍵詞主要有“國(guó)家”、“寶藏”、“CCTV”、“國(guó)寶”、“博物館”、“頻道”、“中國(guó)”、“視頻”等。這些發(fā)現(xiàn)將為用戶畫像打下基礎(chǔ)。

參考文獻(xiàn)

[1] 曾鴻,吳蘇倪.基于微博的大數(shù)據(jù)用戶畫像與精準(zhǔn)營(yíng)銷[J].現(xiàn)代經(jīng)濟(jì)信息,2016(16):314-316.

[2] 解,汪小帆.復(fù)雜網(wǎng)絡(luò)中的社團(tuán)結(jié)構(gòu)分析算法研究綜述[J].復(fù)雜系統(tǒng)與復(fù)雜性科學(xué),2005,2(3):1-12.

[3] 鄧勝利,楊麗娜.用戶個(gè)性特征對(duì)信息行為影響的研究進(jìn)展[J].情報(bào)理論與實(shí)踐,2014,37(5):119-123.

[4] 羅斌,陳翔.冪律特性在新浪微博個(gè)性化推薦中的應(yīng)用研究[J].計(jì)算機(jī)工程與科學(xué),2018,40(04):165-173.

[5] 杜雷,垂直搜索引擎網(wǎng)絡(luò)爬蟲(chóng)的研究與設(shè)計(jì)[D].北京郵電大學(xué),2015.

猜你喜歡
冪律爬蟲(chóng)寶藏
利用網(wǎng)絡(luò)爬蟲(chóng)技術(shù)驗(yàn)證房地產(chǎn)灰犀牛之說(shuō)
真正的寶藏
什么?海底寶藏
寶藏
基于Python的網(wǎng)絡(luò)爬蟲(chóng)和反爬蟲(chóng)技術(shù)研究
利用爬蟲(chóng)技術(shù)的Geo-Gnutel la VANET流量采集
大數(shù)據(jù)環(huán)境下基于python的網(wǎng)絡(luò)爬蟲(chóng)技術(shù)
電子制作(2017年9期)2017-04-17 03:00:46
四川地區(qū)降水冪律指數(shù)研究
冪律流底泥的質(zhì)量輸移和流場(chǎng)
對(duì)抗冪律
泰州市| 乌拉特中旗| 西畴县| 北川| 马龙县| 岳阳市| 澳门| 南乐县| 宜城市| 弥渡县| 历史| 禹州市| 屏边| 仙居县| 会理县| 宝兴县| 岳池县| 茌平县| 蓬莱市| 信阳市| 上栗县| 广水市| 舒城县| 朝阳市| 仲巴县| 南城县| 武山县| 富锦市| 噶尔县| 逊克县| 岑溪市| 绍兴县| 永宁县| 建瓯市| 武胜县| 永胜县| 苗栗市| 西和县| 石柱| 道孚县| 松阳县|