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

基于在線社會網絡的網絡爬蟲的研究和設計

2014-01-16 05:57:16黃藍會
電子設計工程 2014年6期
關鍵詞:用戶信息

黃藍會

(寶雞文理學院 計算機系,陜西 寶雞 721013)

互聯網和移動通信技術的飛速發展,使得在線社會網絡在全球的熱度持續升溫,大量用戶吸引其中。據2012年1月CNNIC第29次“中國互聯網絡發展狀況統計報告”指出[1],中國網民的互聯網溝通交流方式發生明顯變化,傳統交流溝通類應用大幅下滑,而微博/社交網絡等則快速崛起。據統計,全球2012年微博用戶比2011年底增長了296%。2009年8月運行的新浪微博為中國在線社會網絡的典型代表,到2012年注冊用戶已經超過3億,峰值每秒發送32 312條消息,每天發布近8 000萬條消息[2]。利用新浪微博上的用戶和消息進行輿情分析,是當前分析微博的一個重要用途,企業可以從中發掘潛在客戶,推廣產品,政府可以了解民生動態,將謠言扼殺在萌芽狀態,出臺政策解決社會問題,所以,對于在線社會網絡進入深入挖掘與分析具有重要的現實意義[3-4]。新浪微博中用戶和消息眾多,如何將這些數據采集到一起,則是信息挖掘和輿情分析的前期工作,本文設計一個爬蟲系統,通過新浪微博開放的API接口采集數據。

1 新浪微博的特征

新浪微博于2009年8月28日開始運行,截至目前,新浪微博擁有3.5億用戶。新浪微博是一個類似于Twitter的微博系統。雖然其和Twitter在系統架構上類似,但是新浪微博又有一些自己的特征:1)新浪微博內容豐富,可以發送140以內的漢字,同時也可以發送含有圖片、視頻、音樂,多媒體形式的存在,滿足了博友的表達需求,同時也有利于各種資源的傳播;2)發布渠道多樣,可以通過Web網頁,電子郵件插件,特別是可以用手機發微博,沒有發布工具的限制,微博用戶可以隨時隨地的發布信息;3)信息傳播零時差,多樣化的信息接收渠道可以讓用戶在第一時間接收到消息,而其一鍵轉發設置則讓轉發信息的過程實現零時差,同時,微博采取的是單向跟隨的人際關系,用戶不需要是雙向的好友關系就可以任意的關注他人,這種模式可以使得信息以廣播式的方式急速擴散[5]。

2 相關介紹

采集新浪微博的網絡數據是分析微博拓撲特征的前提,本節介紹新浪微博的數據屬性以及采集數據用到的API。

2.1 數據屬性

新浪微博中存在兩個網絡:第一個網絡是關系網絡,節點是用戶,邊是用戶之間的關注關系。第二個網絡是信息傳播網絡,節點是用戶,邊是用戶之間微博的轉發和評論關系。數據可以分為兩大類[6]:用戶信息數據和微博信息數據。用戶信息數據中主要的字段包括:用戶UID、用戶昵稱、用戶所在城市、粉絲數、關注數、微博數、注冊時間、是否是微博認證用戶、用戶的在線狀態、收藏數等等。微博信息數據主要的字段包括:微博作者信息、發布時間、微博ID、微博內容、評論數、轉發數等等。

2.2 API介紹

2010年7月新浪微博開放其API接口,通過新浪微博登錄后可以瀏覽資料,但由于服務器的性能和網絡帶寬的限制,新浪微博的API對請求次數設置了嚴格的限制,每個賬戶每小時可以訪問150次,IP在一個小時內只能申請1000次,只要控制好調用API的頻率,這個方法是獲取新浪微博數據的比較簡單的途徑之一。

新浪微博開放平臺的體系參考了Twitter,兩者非常類似,包括接口、參數的定義,請求方式等等。如果熟悉Twitter的API,基本可以同樣的適用到新浪微博開放平臺上,同時新浪微博開放平臺的文檔技術部分的信息也可以同樣適用于Twitter。到目前為止,新浪微博開放平臺提供的API有如下幾個接口:微博接口、評論接口、用戶接口、關系接口、賬號接口、收藏接口、話題接口、標簽接口、注冊接口、搜索接口、推薦接口、提醒接口、短鏈接口、公共服務接口、地理信息接口[5]。具體每一個接口的功能以及該接口下的API可參看新浪微博開放平臺的API文檔。

3 網絡爬蟲系統

本文設計的網絡爬蟲系統由兩個模塊組成,分別是模擬登錄模塊和爬取模塊。圖1給出了該爬蟲模型。下面將具體介紹兩個模塊。

圖1 網絡爬蟲模型Fig.1 Model of crawler

3.1 模擬登錄模塊

由于一般的瀏覽器提供了自動獲取并保持用戶訪問某網站時產生的cookie,創建相應的session,所以用戶在第一次通過瀏覽器進入新浪微博時需要登錄,但之后一段時間就可以不需要再登錄,直接進入系統。目前新浪微博服務器無法對一段普通的計算機程序的訪問創建相應的session,因此,為了方便網頁爬蟲模塊的實現,我們采用新浪微博模擬登錄方法來解決。

為了實現對新浪微博的模擬登錄,首先要獲得一個可以使用的cookie,實驗中利用chrome瀏覽器直接可以獲得用戶登錄某網站的cookie,之后就可以創建session,從而實現模擬登錄。數據采集人員在模擬登錄之后,就可以采用點擊微博頁面的方法去啟動程序了。

3.2 爬取模塊

Web1.0網頁的獲取是通過網絡爬蟲實現的。網絡爬蟲的工作流程是通過設定種子URL作為入口地址,程序按照一定的爬行策略獲取每一個URL對應的網頁內容,然后解析網頁內容,從中提取出鏈接的URL作為下一次爬行的種子,依次循環,直到滿足爬行結束的條件。

在本系統中,首先選用合適的種子用戶開始爬取數據,爬行策略基本上和Web1.0的爬行策略相同,不同的是新浪微博的網頁爬蟲是根據用戶之間的關系向外爬行的,不能像Web1.0根據鏈出網頁URL進行爬行,在新浪微博中,我們采用從一個給定的種子用戶,通過關注改用戶的關注列表,依次獲得關注列表中的每一個人的關注列表,這樣一層一層的向外擴展。

下載微博網頁可以和下載普通網頁一樣,通過網頁URL定位到該網頁后利用JAVA程序提供的下載網頁的函數,該函數會打開一個數據流,執行完后整個網頁內容會以字符串的形式保存下來。

解析網頁通常是制定一個頁面解析規則,由于新浪微博相同種類的頁面的編碼規則一樣,所以采用將HTML網頁轉化為標準的DOM樹結構的方法,可以將頁面解析出來供后續篩選用。采用這個方法的原來是程序員在編寫HTML網頁時很多標簽不是成對出現的,所以直接利用HTML解析網頁信息比較困難,而標準的DOM樹結構利用Xpath可以很方便的定位存放數據的DOM節點位置,抽取該節點的內容。所以,采用標準的DOM樹結構可以很方便的解析網頁。

篩選用戶信息實際上是一個數據去重操作,在Web1.0網頁爬蟲中去重的方法很多,可以用C++或者JAVA語音提供的現成的HashMap數據結構,但是這種去重策略不能滿足大規模的網頁爬行,如果網頁數量很大,HashMap<string,blooean>所占內存會很大。本文設計一個針對新浪微博用戶信息數據獲取過程的過濾算法。根據新浪微博為每一個注冊用戶分配的64位整數隨機ID號,以其作為二進制向量的下標查找,如果小標的對應值為1,證明已經獲取過該ID的用戶信息,否則說明這個用戶信息還沒有被獲取過。當需要開辟一個40億的二進制數組的時候,所需內存為470M,一般的PC機都能承受。JAVA提供的數據結構bitmap,實際是一個bit數組,利用其可以代替二進制向量,初始化時大小不能超過2147483648,以此將用戶ID號分為4個區間分別用一個過濾器處理。

具體的過濾算法如下:

Boolean WEIBO_ID_FILTER(ID)

if(ID> FOURTH_INTERVAL)Then

表1 新浪微博媒體用戶ID分段過濾Tab.1 Subsition filtration of user ID in Sina wicroblog

Long newID←ID-FOURTH_INTERVAL

if(FOURTH_FILTER[newID]為 0)

Then FOURTH_FILTER[newID]置1

return true

Else return false

EndIf

EndIf

if(ID> THIRD_INTERVAL)Then

Long newID←ID-THIRD_INTERVAL

if(THIRD_FILTER[newID]為 0)

Then THIRD_FILTER[newID]置1

return true

Else return false

EndIf

EndIf

if(ID> SECOND_INTERVAL) Then

Long newID←ID-SECOND_INTERVAL

If(SECOND_FILTER[newID]為 0)

Then SECOND_FILTER[newID]置1

return true

Else return false

EndIf

EndIf

if(ID> FIRST_INTERVAL) Then

Long newID←ID-FIRST_INTERVAL

If(FIRST_FILTER[newID]為 0)

Then FIRST_FILTER[newID]置1

return true

Else return false

EndIf

EndIf

4 實驗結果與分析

服務器的軟件環境:

操作系統:Windows Server 2003 R2;

數據庫:MySQL Server 5.0.1;

服務器的數據采集模塊;.NET 3.5;

數據分發服務器:JDK 1.6,Eclipse 3.5;

數據采集模塊:Visual Studio 2005;

開發語言:C#,Java

本實驗主要是比較布隆過濾器和本文采用的過濾算法的效率。利用從1到100000000個不同的數字和10萬個重復數字作為實驗數據,用布隆過濾器和本文的過濾算法對1億個不同數字和10萬個重復數字分別進行過濾去重。

表2 1億個不同數字的過濾效果Tab.2 Filtering result about one bilion different digital

從表2可以看出,本文采用的過濾算法明顯高于布隆過濾器。因為布隆過濾器要將待過濾元素映射到8個值后再去查找二進制向量。本文用的過濾算法不用映射直接去查找。

表3 10萬相同數字的過濾效果Tab.3 Filtering result about ten million same digital

從表3可以看出,兩種過濾算法對于重復數據都可以檢測到。

5 結束語

中國新浪微博的迅猛發展已經影響到我們的方方面面,從中收集用戶資料進行輿情分析是目前很多專家學者開始的一個新課題,其中收集用戶資料則是這項研究的基礎,只有采集到足夠數量的數據,分析才有意義。本文設計了一個網絡爬蟲系統,利用新浪微博的API爬取用戶資料,實驗證明,該方法在較短的時間內能收集到較多用戶資料,達到較為滿意的效果。

[1]CNNIC.第29次中國互聯網絡發展狀況調查統計報告[R].北京:中國互聯網絡信息中心,2012.

[2]高戈坤.新浪微博用戶數再創新高[J].通信世界,2012(2):10-11.GAO Ge-kun.Sina micro-blog user number to a new high[J].Communication Word Weekly,2012(2):10-11.

[3]林旺群.基于帶權圖的層次化社區并行計算[J].方法.軟件學報,2012,6(23):1517-1530.LIN Wang-qun.Paraller computing hierachical community approach based on weighted-graph[J].Journal of Software,2012,6(23):1517-1530.

[4]劉興亮.微博的傳播機制及未來發展思考 [J].新聞與寫作,2010(1):43-46.LIU Xing-liang.Thinking about communication mechanism micro-blog and future development[J].News and Writing,2010(1):43-46.

[5]王亮.微博媒體的信息傳播分析[D].哈爾濱:哈爾濱工業大學,2012.

[6]郭正彪.大尺度在線社會網絡結構嚴謹[D].武漢:華中科技大學,2012.

猜你喜歡
用戶信息
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
Camera360:拍出5億用戶
創業家(2015年10期)2015-02-27 07:55:08
100萬用戶
創業家(2015年10期)2015-02-27 07:54:39
如何獲取一億海外用戶
創業家(2015年5期)2015-02-27 07:53:25
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
信息
建筑創作(2001年3期)2001-08-22 18:48:14
健康信息
祝您健康(1987年3期)1987-12-30 09:52:32
主站蜘蛛池模板: 国产91久久久久久| 国产凹凸一区在线观看视频| 国产精品亚洲日韩AⅤ在线观看| 无码国产偷倩在线播放老年人| 99re精彩视频| 国产本道久久一区二区三区| 亚洲天堂免费在线视频| 四虎永久在线| 五月激情婷婷综合| 亚洲国产日韩一区| 免费看a毛片| 亚洲青涩在线| 成人国产免费| 亚洲国产综合精品一区| 无码AV动漫| 免费毛片网站在线观看| 亚洲成人黄色网址| 色一情一乱一伦一区二区三区小说| 一级毛片无毒不卡直接观看| 毛片久久久| 精品色综合| 欧美 亚洲 日韩 国产| 国产一级精品毛片基地| 国产精品久久久精品三级| 久久一级电影| 91精品小视频| 久久精品这里只有国产中文精品| 亚洲午夜国产精品无卡| av在线无码浏览| 国产精品久久久久久搜索| 欧美成人区| 萌白酱国产一区二区| 国产成人福利在线视老湿机| 亚洲三级电影在线播放| 91精品国产无线乱码在线| 欧美色视频在线| 亚洲色无码专线精品观看| 四虎国产成人免费观看| 波多野结衣的av一区二区三区| 99久久精品美女高潮喷水| 呦视频在线一区二区三区| 老司机久久99久久精品播放| 日本www色视频| 国产一区二区三区夜色 | 精品少妇人妻无码久久| 日本亚洲欧美在线| 色香蕉影院| 亚洲欧美另类久久久精品播放的| 久久综合伊人77777| 亚洲乱强伦| 欧美日韩成人| 婷婷成人综合| 日韩a级片视频| 国产资源免费观看| 久久77777| 热这里只有精品国产热门精品| 99久久精彩视频| 国产日本一线在线观看免费| 999在线免费视频| 久草视频一区| 国产伦片中文免费观看| 国产无码高清视频不卡| 亚洲国产成人久久77| 国国产a国产片免费麻豆| 国产主播福利在线观看| 欧美国产日韩在线观看| 久久综合伊人 六十路| 日韩高清一区 | 777国产精品永久免费观看| 免费看av在线网站网址| 99伊人精品| 久久黄色免费电影| 午夜福利视频一区| 国产精品密蕾丝视频| 欧美区在线播放| 国产成人h在线观看网站站| 亚洲无码不卡网| 精品少妇人妻一区二区| 亚洲国模精品一区| 国产日韩久久久久无码精品| 国产成人高清在线精品| 制服丝袜一区二区三区在线|