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

?

社交網(wǎng)絡(luò)挖掘方案研究

2015-07-20 11:01俞忻峰
現(xiàn)代電子技術(shù) 2015年4期
關(guān)鍵詞:條數(shù)爬蟲新浪

俞忻峰

(南京理工大學(xué),江蘇 南京 210014)

根據(jù)中國互聯(lián)網(wǎng)絡(luò)信息中心(CNNIC)發(fā)布了第33次《中國互聯(lián)網(wǎng)絡(luò)發(fā)展狀況統(tǒng)計報告》指出:社交網(wǎng)站的整體覆蓋率為61.7%,中國互聯(lián)網(wǎng)用戶總數(shù)已經(jīng)達到6.18億,互聯(lián)網(wǎng)的滲透率已經(jīng)達到67.8%。其中微博等社交網(wǎng)絡(luò)的使用規(guī)模為2.81億,網(wǎng)中微博的使用率[1]為45.5%。

社交網(wǎng)絡(luò)的使用率越來越高,微博等社交應(yīng)用在越來越流行。微博相比傳統(tǒng)網(wǎng)絡(luò)的應(yīng)用形式而言,微博的信息傳播速度更快,覆蓋人群大,更新更加頻繁。因此,如何有效的采集微博應(yīng)用中的各種信息,對于分析數(shù)據(jù)的隱性特征,研究用戶的偏好,用戶的個性化推薦以及趨勢的預(yù)測具有非常重要的意義。

傳統(tǒng)的微博類數(shù)據(jù)挖掘方法有兩種:

(1)通過網(wǎng)絡(luò)爬蟲抓取信息,比如周立柱等人提出網(wǎng)絡(luò)爬蟲方案[2],但爬蟲的效率不是很高,抓取的數(shù)據(jù)量比較少,同時必須繞過新浪微博的模擬登陸,才能有效采集新浪微博的數(shù)據(jù)。

(2)黃延煒等人研究的利用網(wǎng)絡(luò)數(shù)據(jù)采集設(shè)備直接截取微博在網(wǎng)絡(luò)中的傳輸數(shù)據(jù)[3],這種方法和網(wǎng)絡(luò)爬蟲相似,效率不高,對數(shù)據(jù)的提取過程十分復(fù)雜。

本文主要立足于如何獲取新浪微博上的數(shù)據(jù)展開研究:采取兩種方法來獲取新浪微博上的數(shù)據(jù)。第一種方法是基于微博第三方應(yīng)用接口的(API),對接口編程獲取數(shù)據(jù)。第二種方式是采用網(wǎng)絡(luò)爬蟲的方式,基于NodeJS實現(xiàn)的網(wǎng)絡(luò)爬蟲。最后比較兩種方式采取數(shù)據(jù)的優(yōu)缺點,進一步優(yōu)化微博的采集方法,提出兩種方法相融合的方法。

1 基于新浪API的方案

對于獲取社交網(wǎng)站數(shù)據(jù),可以通過第三方應(yīng)用平臺接口(API)來獲取社交網(wǎng)站上的數(shù)據(jù)。在使用微博官方API之前,必須要接入微博應(yīng)用,成為微博的開發(fā)者,在創(chuàng)建完應(yīng)用之后,系統(tǒng)會返回給一個AppKey和AppSe?cret。App Key是應(yīng)用的惟一識別標志,微博開放平臺通過App Key鑒別應(yīng)用的身份。App Secret是給應(yīng)用分配的密鑰,保證應(yīng)用來源的可靠性[4]。

1.1 Oauth2認證

調(diào)用新浪微博的API必須通過新浪微博的用戶認證?,F(xiàn)在新浪微博的用戶認證采取的是Oauth2的認證(見圖1)。Oauth2認證簡化了之前的繁瑣的Oauth認證,同時安全性也得到很大的提高,是用戶未來的主要授權(quán)認證方式?,F(xiàn)在國內(nèi)主流的社交網(wǎng)站的授權(quán)方式都采用的是Oauth2。Oauth2認證過程為:

(1)Client發(fā)送 Authorization Request給 Resource Owner(個人),然后Resource Owner會返回一個Authori?zation Grant碼給 Client。

(2)Client拿到Authorization Grant后向Authoriza?tion Server(認證服務(wù)器)發(fā)請求,接著Authorization Server會返還一個Access Token給Client。

(3)Client拿著Access Token去訪問Resource Server(資源服務(wù)器),Resource Server會把相應(yīng)資源給Client。

圖1 Oauth2認證流程圖

1.2 接入API

常規(guī)的接入新浪微博應(yīng)用主要有三種方式:

(1)網(wǎng)站接入:微連接是微博針對第三方網(wǎng)站提供的社會化網(wǎng)絡(luò)解決方案。為第三方網(wǎng)站提供用戶身份系統(tǒng)及社交關(guān)系導(dǎo)入。

(2)站內(nèi)應(yīng)用:站內(nèi)應(yīng)用能使你的Web類應(yīng)用最快地融入微博,提升用戶體驗,應(yīng)用將以http://apps.weibo.com/個性域名的地址被用戶訪問到,并可深度整合微博眾多推廣資源。

(3)移動應(yīng)用:移動應(yīng)用開放平臺為第三方提供了簡便的合作模式,滿足了手機和平板電腦用戶的需求。

移動應(yīng)用接入方式有以下優(yōu)勢:在移動設(shè)備上和PC上調(diào)用的API是相同的,但是移動設(shè)備有專門的An?droid SDK,更方便實驗環(huán)境搭建;同時在移動設(shè)備上搜集數(shù)據(jù)對于后續(xù)的實驗也提供了方便。因此實驗選擇了移動應(yīng)用接入方式:

SDK是軟件開發(fā)工具包,它是對新浪API的一層封裝。首先新浪官方網(wǎng)站上下載Android SDK,現(xiàn)在最新的版本是V2.5.0。Android SDK內(nèi)部已經(jīng)實現(xiàn)了Oauth2認證,SSO認證等多種方式。SSO認證方式是指通過自己的應(yīng)用喚醒手機上的客戶端進行授權(quán)登陸操作,開發(fā)者并不需要知道授權(quán)的機制。在實驗方案中,并沒有使用SSO認證方式,因為SSO認證需要一定的依賴性,移動設(shè)備上必須安裝微博客戶端。

使用Android SDK實現(xiàn)Oauth2認證流程如下:

(1)把下載的下來的Android SDK包解壓,在demo?src文件夾下面的weiboSDK,和自己的項目工程引入開發(fā)環(huán)境中。

(2)在Android工程的AndroidManifest.xm l文件中增加所需要的文件權(quán)限。

(3)把工程中的Constants類中的APP_KEY,Redi?rect_URL,SCOPE域替換成自己創(chuàng)建應(yīng)用時的所對應(yīng)的參數(shù)。

(4)創(chuàng)建微博授權(quán)類對象:

mWeiboAuth=new WeiboAuth(

this,

Constants.APP_KEY,

Constants.REDIRECT_URL,

Constants.SCOPE);

(5)實現(xiàn)weiboAuthListener接口,在授權(quán)信息成功以后,SDK會將access_token,uid等通過Bundles返回,并且調(diào)用onComplete回調(diào)函數(shù)。

(6)進行 Oauth2.0 Web授權(quán),調(diào)用anthorize()方法,授權(quán)成功以后就會獲得TOKEN。

一般情況下,在獲取到Token后,可以使用An?droid中的sharePreferences把token持久化本地文件中,供后面程序使用。

完成了用戶授權(quán)之后,就解決了用戶的身份認證問題,現(xiàn)在應(yīng)用可以直接調(diào)用新浪微博的API。這里以獲取當前用戶發(fā)表的微博為例:

查詢API,填上接口所需要的幾個參數(shù)值,接著發(fā)送下面類似的HTTP請求:

https://api.sina.com.cn/2/statuses/user_timeline?count=**&page=**

其中請求參數(shù)count指的是單頁中返回的結(jié)果條數(shù),默認值為20,最大100,超過100按100計算,page是指返回結(jié)果指定的頁碼,通過調(diào)用這個接口,我們可以得到當前用戶發(fā)布的微博的Json數(shù)據(jù)。程序結(jié)構(gòu)圖如圖2所示。

但是新浪微博接口有一個返回結(jié)果總條數(shù)的限制,這個接口最多只能返回2 000條數(shù)據(jù)。這個接口有2個限制原則:

(1)基于服務(wù)器IP的請求次數(shù)限制(1 000次/h)。

(2)基于同一個用戶在使用同一個應(yīng)用的請求次數(shù)限制(1 000次/h)。

針對微博API的這些缺陷,在設(shè)計系統(tǒng)的時候需要考慮程序的調(diào)用次數(shù)。新浪API中有一個rate_lim?it_status的接口,這個接口返回了接口的剩余調(diào)用次數(shù),每小時的限制數(shù),計算器重置剩余時間,下次重置時間4個參數(shù)。參考了廉潔等人的設(shè)計方案[5],這里在系統(tǒng)中加入了程序控制模塊和存儲控制模塊,程序控制模塊主要的任務(wù)是監(jiān)控調(diào)用API的次數(shù),通關(guān)觀察rate_lim?it_status接口返回的結(jié)果,返回的調(diào)用次數(shù)大于950次的時候,接著調(diào)用Java的ADSL程序,進行重新?lián)芴?,接著使程序休?min,這樣可以有效地防止API的調(diào)用上限。

圖2 基Andrioid SDK數(shù)據(jù)抓取結(jié)構(gòu)圖

存儲控制模塊,主要是提高數(shù)據(jù)的存儲效率的,由于網(wǎng)絡(luò)等其他客觀因素的存在,并不是每次都接收到完全一樣的數(shù)據(jù),在獲得數(shù)據(jù)和存儲數(shù)據(jù)之間加了一成存儲隊列層,這樣,對于響應(yīng)收回的數(shù)據(jù),可以檢查存儲隊列中是否存在,如果在隊列中找到數(shù)據(jù),則跳過存儲模塊直接發(fā)送下一次請求,如果發(fā)現(xiàn)存儲隊列中不存在,就把請求回來的數(shù)據(jù)放入存儲隊列中,并且把數(shù)據(jù)持久化到MongoDB數(shù)據(jù)庫中。

Android SDK中并沒有對所有的新浪API進行封裝,對于一些特殊的功能,可以自己對新浪API進行封裝,擴展Android SDK。這樣更加有利于數(shù)據(jù)的獲取。對于國內(nèi)其他社交網(wǎng)站也會提供相對應(yīng)的SDK和API,可以采取類似的方法采集數(shù)據(jù)。

2 基于網(wǎng)絡(luò)爬蟲頁面解析

僅僅使用新浪微博提供的API獲取新浪微博的數(shù)據(jù)并不是惟一的方法,還可以采用自己手寫網(wǎng)絡(luò)爬蟲的方式采集微博的數(shù)據(jù)。使用網(wǎng)絡(luò)爬蟲的方式主要涉及三個過程,第一步模擬新浪微博的登陸問題,能夠獲取新浪微博的用戶首頁;第二步分析用戶首頁,提取想要的信息;第三步內(nèi)容進行信息持久化[6?10]。

在此使用Node.js實現(xiàn)了這個方案。Node.js本身對絕大數(shù)操作采用的是異步處理的方案,所以對于網(wǎng)絡(luò)爬蟲這種要頻繁進行I/O操作的應(yīng)用來說,使用Node.js是非常合適的。另外,Node.js有強大的包管理器工具npm。比如cheerio和cookie?jar對于分析網(wǎng)頁都是非常不錯的庫工具。

2.1 新浪網(wǎng)站的模擬登陸過程

大家平時登陸新浪微博,新浪微博的前端客戶端的js文件會把使用者的用戶名和密碼進行加密并進一步進行處理交給后臺服務(wù)器進行驗證。驗證通過以后,返回個人登陸頁面的首頁。因此采用chrome的fiddle插件抓取了一次登陸操作發(fā)出的所有請求:

2.1.1 模擬登陸前的預(yù)處理

當點擊微博用戶名輸入框的時候,前端js會發(fā)出下面的url請求:

http://login.sina.com.cn/sso/prelogin.php?entry=weibo&call?back=sinaSSOController.preloginCallBack&su=&rsakt=mod&client=ssologin.js(v1.4.15)&_=1401243592676

請求的返回值中有幾個字段:retcode,如果是0就代表返回成功;Nonce,一串隨機數(shù)用來加密用的;Pub?lickey,用于rsa2密碼加密的公鑰,rsakv也是加密用一段字符串;Servicetime,服務(wù)的時間戳;Pcid,個人的計算機信息。

當輸入完用戶名之后,前端頁面會第二次發(fā)送/pre?login.php請求,中間會帶上對用戶名進行base64算法加密的參數(shù)su。同時更新了Servicetime這個時間戳。如果要帶上驗證碼的話會返回一個參數(shù)showpin字段。

其中驗證碼的產(chǎn)生是根據(jù)/cgi/pin.php的請求得到。請求參數(shù)中有一個隨機數(shù)r,以及計算機名pcid。

2.1.2 模擬提交表單操作

查看提交表單操作的URL請求:

http://login.sina.com.cn/sso/login.php?client=ssologin.js

其中關(guān)心的主要是sp字段和su字段怎么加密。后來自己閱讀了最新的ssologin.js代碼,其中有對sp和su的加密過程:

var RSAKey=new sinaSSO.Encoder.RSAKey();

RSAKey.setPublic(me.rsaPubkey,“10001”);

password=RSAKey.encrypt(

[me.servertime,me.nounce].join(" ")

+ ′ ′+password);

sinaSSOEncoder類在ssologin.js中,它封裝了對sina數(shù)據(jù)的編碼的基本操作。最終password的產(chǎn)生就是由調(diào)用RSAKey的encrypt方法返回的字符串和‘ ’和自己的密碼做拼接而成。

2.1.3 登陸成功

如果上一步的retcode返回值為0。表示登陸成功。接下來系統(tǒng)會發(fā)請求個人頁面的請求:

http://weibo.com/ajaxlogin.php?framelogin=1&callback=parent.sinaSSOController.feedBackUrlCallBack&sudaref=weibo.com

返回userinfo信息和狀態(tài)信息以及認證票據(jù)。接下來要做的就是訪問要抓取的頁面請求信息,比如想訪問自己的朋友頁面,只需要發(fā)送這個頁面的所對應(yīng)的url請求,就能夠得到這個頁面的HTML內(nèi)容。

2.1.4 保存Cookie

保存當前的Cookie值,用于以后直接登錄。

2.2 基于網(wǎng)絡(luò)爬蟲的程序架構(gòu)設(shè)計

整個程序架構(gòu)如圖3所示,主要由下述幾個功能模塊組成。

圖3 網(wǎng)絡(luò)爬蟲的程序架構(gòu)圖

(1)URL集合。URL集合是指用戶模擬登陸成功以后,用戶首先開始提取的URL頁面,也可稱為種子集合。

(2)采集頁面與頁面分析。對于HTML頁面,其規(guī)則是很復(fù)雜的,如果直接用正則表達式去匹配,寫出的正則表達式語句將非常復(fù)雜,并且使用正則表達式的效率也不是很高。node.js提供了一款cheerio11的插件,可以用node.js管理工具npm直接進行安裝。對于頁面解析經(jīng)常會使用JSDOM,但是JSDOM有以下幾個問題,首先,JSDOM對內(nèi)建的解析太過嚴格,JSDOM附帶的HTML解析不能處理當下的大眾網(wǎng)站。其次JSDOM太慢,有很大的延遲。最后JSDOM比較累贅,從本質(zhì)上來說JSDOM是為使用者提供一個在瀏覽器里看到的DOM環(huán)境,便這里并不需要這樣的功能。因此可以選擇Cheerio,它的語法和Jquery類似,且速度非???,大約是JSDOM的8倍。Cheerio幾乎能夠解析任何HTML和XML。Node.js是單線程的,這里沒有死鎖的存在,也沒有線程上下文交換帶來的開銷問題。同時Node.js是基于事件驅(qū)動的,對于I/O密集型的應(yīng)用非常合適。同時對于CPU密集型的一些任務(wù),Node.js也能夠勝任。因此,用Node.js來做網(wǎng)絡(luò)爬蟲非常合適。對于頁面的分析處理,首先把HTML頁面讀進內(nèi)存,然后利用Cheerio庫進行頁面解析操作。把有用的結(jié)構(gòu)化信息提取出來,存入數(shù)據(jù)庫。同時也要提取uid字段或者tid字段,進行去重操作,因為這些字段能夠重組URL,比如http://wei?bo.com/u+UID,接著把這個URL加入URL隊列中。

(3)URL隊列[12?15]。URL隊列主要由3個隊列組成,分別是等待隊列,處理隊列和完成隊列。處理隊列中的URL是要被送到URL集合中的。URL等待隊列存放已經(jīng)提取出來的但是還沒有做任何處理URL,等待送入處理隊列中。完成隊列中存放已經(jīng)處理完的URL請求和發(fā)現(xiàn)錯誤的URL請求。在把拼裝好的URL送入到URL隊列之前,要先檢查完成隊列是否存在該URL,如果有的話就跳過。URL隊列的好處是能夠控制程序的效率,如果待處理URL為空,程序結(jié)束,這樣會影響效率。如果待處理URL隊列長度太大,服務(wù)器壓力比較大。所以要實時控制URL隊列的長度。

(4)數(shù)據(jù)存儲。持久化數(shù)據(jù)的作用,把抓取的結(jié)構(gòu)化數(shù)據(jù)存入MongoDB數(shù)據(jù)庫中。

3 數(shù)據(jù)分析

為了驗證本文方法的有效性和這兩種方法的性能區(qū)別,分別搭建了基于API和NodeJs爬蟲的開發(fā)環(huán)境,實驗開發(fā)機器是Lenovo Y430,CPU酷睿I2,內(nèi)存5 GB,操作系統(tǒng)是Windows 7.Android SDK demo開發(fā)環(huán)境的是Eclipse IDE for JavaEE。網(wǎng)絡(luò)爬蟲開發(fā)環(huán)境是Web?Storm 5,程序由node.js實現(xiàn)。 數(shù)據(jù)統(tǒng)一采用MongoDB進行存儲。實驗中選取了20個微博賬號,每個賬號有2 000個好友,并且把這些賬號加入應(yīng)用的測試賬號。

實驗中,主要是抓取用戶所發(fā)的微博信息,微博的信息結(jié)構(gòu)是{微博ID(mid),用戶ID(uid),微博內(nèi)容(content),轉(zhuǎn)發(fā)數(shù)(repost_count),評論數(shù)(comment_count)}的字符串,比較抓取的微博條數(shù),并把結(jié)果持久化本地數(shù)據(jù)庫中。實驗中排除網(wǎng)絡(luò)帶寬的影響,本地都選擇了網(wǎng)絡(luò)為100 Mb/s的共享教育網(wǎng)。

(1)穩(wěn)定性能比較

穩(wěn)定性是指單位時間內(nèi)抓取的微博數(shù)量的變化趨勢,每小時內(nèi)抓取的微博數(shù)量越接近,越穩(wěn)定,程序的性能也越好。通過對比連續(xù)抓取10 h的微博數(shù)據(jù),實驗結(jié)果如圖4所示。

圖4 穩(wěn)定性對比圖

從圖4可以發(fā)現(xiàn),基于API的折線圖波動比較大,而基于網(wǎng)絡(luò)爬蟲的比較平穩(wěn)。這是由于API方式是由新浪服務(wù)器提供的數(shù)據(jù),受網(wǎng)絡(luò)帶寬等因素影響較大,因此穩(wěn)定性不高,有一定的波動。所以基于網(wǎng)絡(luò)爬蟲的方式在穩(wěn)定性方面優(yōu)于基于API的方式。

(2)抓取速率比較

表1為兩種方式抓取速率對比(條數(shù)省略到百位)。

表1 實驗結(jié)果

數(shù)據(jù)的抓取速率主要指相同時間段里抓取微博條數(shù)多少的比較。在程序中,記錄下來兩種方式每小時抓取的微博條數(shù),其實驗結(jié)果如表1所示。通過表中分析,每小時API抓取的條數(shù)總是比網(wǎng)絡(luò)爬蟲抓取的條數(shù)多。這是由于基于API的方式是直接返回數(shù)據(jù),不需要進行網(wǎng)頁預(yù)處理等復(fù)雜操作,而網(wǎng)絡(luò)爬蟲方式需要網(wǎng)頁解析,提取數(shù)據(jù)等操作。因此基于API的方式在抓取速率方面優(yōu)于網(wǎng)絡(luò)爬蟲的方式。

(3)數(shù)據(jù)完整性

經(jīng)過查閱官網(wǎng)資料[16],新浪API是有一定盈利模式的,對于有些數(shù)據(jù)地返回需要申請權(quán)限并且支付一定的金額,不可能無條件的返還所有想要的數(shù)據(jù)。網(wǎng)絡(luò)爬蟲方式的基礎(chǔ)是對當前網(wǎng)頁進行分析處理,能提取出需要的信息。因此網(wǎng)絡(luò)爬蟲的方式在數(shù)據(jù)完整性方面優(yōu)于API查詢的方式。

(4)API和網(wǎng)絡(luò)爬蟲的融合策略

API和網(wǎng)絡(luò)爬蟲的融合策略主要是指API和網(wǎng)絡(luò)爬蟲這兩種方法相結(jié)合,是兩種方法相互配合采集數(shù)據(jù)。程序架構(gòu)如圖5所示。

圖5 API和網(wǎng)絡(luò)爬蟲融合策略

API和網(wǎng)絡(luò)爬蟲獲取微博數(shù)據(jù)各有各的優(yōu)勢,對于某些信息采集,可以結(jié)合API和網(wǎng)絡(luò)爬蟲這兩種方式,讓采集速率最優(yōu)化。最大化獲取微博信息內(nèi)容,可以首先使用測試賬號作為種子ID,調(diào)用新浪API接口獲得測試用戶的朋友ID,把朋友ID拼接成URL,然后使用網(wǎng)絡(luò)爬蟲的方式進行收集,把收集到的個人信息,微博信息存入到數(shù)據(jù)庫中。同時把收集到好友信息經(jīng)過去重操作之后加入到種子列表中,如此反復(fù)迭代,收集微博信息。

表2是連續(xù)采集3 h的微博條數(shù),采用融合策略后,采集的微博條數(shù)有所增加。這是由于采用融合策略后,API的方式只需要返回用戶的UID,相比直接返回微博內(nèi)容,效率有所提升。同時網(wǎng)絡(luò)爬蟲只需要專注解析用戶UID的頁面,因此在采集微博的情況下,多策略融合的方法采集的效率更高。

表2 三種方式3 h采集微博條數(shù)

4 結(jié)論

通過API和網(wǎng)絡(luò)爬蟲的方式都能獲取數(shù)據(jù)。API的方式獲取數(shù)據(jù)的效率高,但是受第三方服務(wù)商限制比較大。網(wǎng)絡(luò)爬蟲的方式效率相對差些,但獲得數(shù)據(jù)比較完整,穩(wěn)定性更好。對于新浪微博的采集可以采用兩種方式相融合的策略。接下來工作是如何優(yōu)化這兩種抓取方式以及垃圾微博信息處理的問題。優(yōu)化網(wǎng)絡(luò)爬蟲主要從查詢驅(qū)動的爬取,反向鏈接數(shù),PR值,前向鏈接數(shù)等因素去考慮。垃圾微博處理主要考慮如何構(gòu)建模型,識別垃圾微博。微博的使用日益流行,它每天產(chǎn)生的海量的數(shù)據(jù)。如何采集并且利用這些信息,對用戶行為分析、輿情監(jiān)控、幫助決策有著非常大的幫助。

[1]中國互聯(lián)網(wǎng)信息中心.第33次中國互聯(lián)網(wǎng)絡(luò)發(fā)展狀況統(tǒng)計報告[EB/OL].[2014?03?05].http://www.cnnic.net.cn/hlwfzyj/hlwxz?bg/hlwtjbg/201403/t20140305_46240.htm.

[2]周立柱,林玲.聚焦爬蟲技術(shù)研究綜述[J].計算機應(yīng)用,2005,25(9):1965?1969.

[3]黃延煒,劉嘉勇.新浪微博數(shù)據(jù)獲取技術(shù)研究[J].信息安全與通信保密,2013(9):71?73.

[4]吳勇.基于Android手機的新浪微博應(yīng)用的研究與實現(xiàn)[D].西安:西安電子科技大學(xué),2013.

[5]廉潔,周欣.新浪微博數(shù)據(jù)挖掘方案[J].清華大學(xué)學(xué)報:自然科學(xué)版,2011,51(10):1300?1305.

[6]羅一紓.微博爬蟲的相關(guān)技術(shù)研究[D].哈爾濱:哈爾濱工業(yè)大學(xué),2013.

[7]吳黎兵,柯亞林,何炎祥.分布式網(wǎng)絡(luò)爬蟲的設(shè)計與實現(xiàn)[J].計算機應(yīng)用與軟件,2011,28(11):176?179.

[8]宋海洋,劉曉然,錢???一種新的主題網(wǎng)絡(luò)爬蟲爬行策略[J].計算機應(yīng)用與軟件,2011,28(11):264?267.

[9]蔣宗禮,田曉燕,趙旭.一種基于語義分析的主題爬蟲算法[J].計算機工程與科學(xué),2010,32(9):145?147.

[10]韓宇貞,朱華生.基于Base64編碼的數(shù)據(jù)加密技術(shù)[J].南昌水專學(xué)報,2002(21):38?40.

[11]Cheerio.Open source connections[M/OL].[2014?09?30].http://www.cheeriojs.github.io Cheerio.

[12]樊星岑.面向微博數(shù)據(jù)挖掘的網(wǎng)絡(luò)爬蟲系統(tǒng)設(shè)計與實現(xiàn)[D].哈爾濱:哈爾濱工業(yè)大學(xué),2013.

[13]朱云鵬,馮楓,陳江寧.多策略融合的中文微博數(shù)據(jù)采集方法[J].計算機工程與設(shè)計,2013,3(11):3835?3839.

[14]盧體廣,劉新,劉任任.微博數(shù)據(jù)通用抓取算法[J].計算機工程,2014,40(5):12?16.

[15]馮典.面向微博的數(shù)據(jù)采集和分析系統(tǒng)的設(shè)計與實現(xiàn)[D].北京:北京郵電大學(xué),2013.

猜你喜歡
條數(shù)爬蟲新浪
利用網(wǎng)絡(luò)爬蟲技術(shù)驗證房地產(chǎn)灰犀牛之說
猴子雖小
基于Python的網(wǎng)絡(luò)爬蟲和反爬蟲技術(shù)研究
利用爬蟲技術(shù)的Geo-Gnutel la VANET流量采集
巧算金魚條數(shù)
大數(shù)據(jù)環(huán)境下基于python的網(wǎng)絡(luò)爬蟲技術(shù)
新浪讀書排行榜
人民網(wǎng)、新華網(wǎng)、中國非公企業(yè)黨建網(wǎng)兩新黨建報道條數(shù)排行
對多邊形對角線條數(shù)的探究
每只小貓給了貓媽媽幾條魚
勃利县| 杂多县| 盐山县| 天津市| 嵩明县| 东至县| 宁陕县| 诸暨市| 芒康县| 鹿泉市| 禹州市| 聂荣县| 宁晋县| 奉化市| 兴山县| 潮州市| 嘉鱼县| 菏泽市| 友谊县| 棋牌| 会东县| 闽清县| 博野县| 酉阳| 延川县| 巧家县| 沾化县| 南宁市| 临西县| 贵溪市| 巴青县| 西城区| 常熟市| 新蔡县| 房山区| 沈丘县| 夹江县| 开江县| 资兴市| 蚌埠市| 海兴县|