亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于網(wǎng)絡爬蟲的新浪微博數(shù)據(jù)抓取技術

        2019-01-27 09:12:27王金峰彭禹王明鐘聲趙雪輝
        中小企業(yè)管理與科技 2019年1期
        關鍵詞:爬蟲網(wǎng)頁入口

        王金峰 ,彭禹 ,王明 ,鐘聲 ,趙雪輝

        (1.防災科技學院,河北 廊坊 065201;2.河北女子職業(yè)技術學院,石家莊 050000)

        1 引言

        隨著移動互聯(lián)網(wǎng)的飛速發(fā)展,人們越來越多地在社交網(wǎng)絡上發(fā)表自己的見解,分享自己的生活,與他人進行交流討論。新浪微博作為國內(nèi)最大的社交平臺之一,同時也成了各類消息發(fā)布的最主要渠道之一。截至2017年9月,微博月活躍用戶3.76億,日活躍用戶1.65億,每天都有用戶發(fā)布上億條微博,評論、轉發(fā)或點贊其他微博。一個如此龐大和公開的社交平臺,每天都能產(chǎn)生海量信息,能為各種輿情監(jiān)控、商業(yè)推廣分析、自然語言處理等系統(tǒng)提供大量的數(shù)據(jù)支持[1]。在國外,開展了針對于Twitter和Facebook等社交平臺的一系列研究,但是不同于國外的Twitter和Facebook等平臺,微博官方并沒有提供相關接口給人們下載與微博相關的數(shù)據(jù)集,并且微博的登錄、瀏覽等操作都有較敏感的反爬蟲機制,這給數(shù)據(jù)的采集帶來了困難,對普通的想獲取相關數(shù)據(jù)的人員來說是個極大的挑戰(zhàn)。因此,快速獲得微博數(shù)據(jù)的方法就是構建一個穩(wěn)定高效的爬蟲抓取系統(tǒng)。

        2 網(wǎng)絡爬蟲

        2.1 原理

        網(wǎng)絡爬蟲(Web Crawler),是自動地抓取萬維網(wǎng)信息的程序或者腳本,它們被廣泛用于互聯(lián)網(wǎng)搜索引擎或其他類似網(wǎng)站。爬蟲一般分為數(shù)據(jù)采集、處理和儲存三個部分。傳統(tǒng)爬蟲從一個或若干初始網(wǎng)頁的URL開始,獲得初始網(wǎng)頁上的URL,在抓取網(wǎng)頁的過程中,不斷從當前頁面上抽取新的URL放入隊列,直到滿足系統(tǒng)的一定停止條件。

        2.2 網(wǎng)絡爬蟲框架Scrapy

        Scrapy是Python開發(fā)的一個快速、可擴展的Web抓取框架,用于抓取Web站點并從頁面中提取結構化的數(shù)據(jù)。通過Scrapy中的Spider模塊,能方便地定義網(wǎng)址爬取和數(shù)據(jù)提取的規(guī)則。

        3 微博爬蟲策略

        現(xiàn)在各種爬蟲的搜索策略[2]主要為:深度優(yōu)先搜索策略、廣度優(yōu)先搜索策略、非完全PageRank策略以及大站優(yōu)先搜索策略。

        微博跟其他普通網(wǎng)站相比,動態(tài)性和網(wǎng)頁結構都比較復雜,其對于爬蟲的防范也更加嚴格,普通的爬蟲程序一般不能直接獲取到相應的網(wǎng)頁內(nèi)容,但其網(wǎng)頁內(nèi)容中的數(shù)據(jù)格式較為統(tǒng)一。所以,針對微博相關的瀏覽機制,運用一些工具和方法,就可以較為方便地獲取到微博中的有關數(shù)據(jù)。

        3.1 微博爬取入口選擇

        微博網(wǎng)頁端基本分為PC端用戶入口(域名:weibo.com)和移動端用戶入口(域名:weibo.cn)。這兩種頁面雖然展現(xiàn)內(nèi)容的方式和策略有所區(qū)別,但能獲取的數(shù)據(jù)基本相同,且由于PC入口為大多數(shù)網(wǎng)頁端用戶瀏覽微博的主要途徑,從安全性和用戶體驗等角度考慮,該入口交互設計都更復雜,并設置有許多動態(tài)刷新的內(nèi)容,這給數(shù)據(jù)的爬取造成了一定難度,而移動端網(wǎng)頁可以直接發(fā)送不同的HTTP請求來獲取相應的內(nèi)容[3],相比PC端而言,后者網(wǎng)頁結構更加簡單,設置的反爬措施也更少,所以選取通過移動網(wǎng)頁入口來進行數(shù)據(jù)的爬取和解析。

        3.2 微博登錄和爬取

        在微博中進行網(wǎng)頁瀏覽是需要進行登錄并保持登錄狀態(tài)的,否則是無法獲取到相關信息的。我們使用多個微博賬戶通過Selenium自動化工具加Firefox瀏覽器無頭模式訪問微博登錄頁面進行登錄,登錄成功后將其相應的cookies保存起來。為了提高爬取的穩(wěn)定性和成功率,還需要建立一個User-Agent池,再對Scrapy的middlewares模塊進行擴展,在其中的process_request方法里對Scrapy的request加入自動化登錄微博后獲得并已保存在數(shù)據(jù)庫的Cookies,在Scrapy請求微博服務器時使用一個可用的Cookies并隨機抽取一個User-Agent進行偽裝,這樣就能順利訪問頁面,減少爬蟲請求被微博服務器屏蔽和賬戶被封號的概率。采用的抓取策略是廣度優(yōu)先搜索,通過社交關系[4],抓取用戶的關系數(shù)據(jù)。只要利用一小群“種子用戶”,每個用戶都對應有一個微博ID,通過使用微博ID也就能獲得該用戶的全部個人信息和他所發(fā)布的微博。以某個“種子用戶”為起點,獲得他的關注人和粉絲等關系[5],再對其好友進行關系搜索,并按此方法遞歸爬取,將得到的用戶去重[6]和排序,加入待爬取的隊列,從而得到一個龐大的待爬取的用戶數(shù)據(jù)集。理論上,這可以爬取到微博上所有的用戶信息。

        4 微博數(shù)據(jù)抓取

        4.1 微博信息的爬取

        得到用戶ID后,就能通過發(fā)起不同的HTTP請求訪問他們的個人信息、微博列表、粉絲列表和關注列表等頁面,將頁面下載之后,能看到這些頁面都是有固定結構的HTML代碼,只要在Scrapy里自定義的Spider中通過正則表達式或者Xpath等工具分別對Response結果進行不同的解析,就能得到相應的結構化數(shù)據(jù)。

        一般的爬取只需保留四類數(shù)據(jù):①微博信息;②個人信息;③用戶關系(只保留關注者的信息);④微博評論信息。例如,微博信息主要抓取的是該用戶發(fā)布過的所有微博的內(nèi)容、時間、轉發(fā)數(shù)、評論數(shù)、點贊數(shù)、發(fā)布微博時的地點(經(jīng)緯度坐標)以及發(fā)布微博所用的設備或平臺等,如果是轉發(fā)微博,還可以獲得源微博的URL鏈接等。

        同時,微博下面的評論與回復也可以按需求進行抓取并以時間排序,作為對話語料數(shù)據(jù)保存。

        4.2 低價值信息的過濾

        微博中因為各種各樣的原因[7],通常會存在一些爬取價值不大的賬號和信息,例如,常見的無人使用的“僵尸賬號”或一些“惡意營銷號”等,如果不加處理而直接爬取則會浪費許多爬取性能和儲存空間,這就需要過濾待爬取的原數(shù)據(jù)。

        目前,在爬取過程中不能很好地識別或直接判斷無價值信息,但微博用戶可以設定某些條件來達到過濾的目的[8],如設置被爬取的主體賬號的粉絲和關注數(shù)閾值在5000之內(nèi),判斷其是否有正常的頭像,昵稱是否是常見的“垃圾賬號”類的昵稱等,也可針對不同的爬取需求來設置爬取對象的屬性,如地域、年齡、發(fā)布的微博數(shù)等,從而得到相應的結果數(shù)據(jù)。

        5 結語

        本爬蟲從技術和思路上提供了獲取微博上相關數(shù)據(jù)的一些方法,對于中小型的數(shù)據(jù)需求有較好的適用性,并且基于Scrapy框架進行了擴展,相比于一般的爬蟲系統(tǒng),有著更好的應對反爬蟲的機制,提高了爬取的效率和穩(wěn)定性。

        作為主流社交互動平臺,在當今大數(shù)據(jù)時代,微博存在著巨大的可挖掘價值。如何提供更快、更準確的數(shù)據(jù)爬取技術,將會是今后極具研究價值和挑戰(zhàn)的方向。

        猜你喜歡
        爬蟲網(wǎng)頁入口
        利用網(wǎng)絡爬蟲技術驗證房地產(chǎn)灰犀牛之說
        基于Python的網(wǎng)絡爬蟲和反爬蟲技術研究
        基于新一代稱重設備的入口治超勸返系統(tǒng)分析
        秘密入口
        基于CSS的網(wǎng)頁導航欄的設計
        電子制作(2018年10期)2018-08-04 03:24:38
        作品三
        絲路藝術(2018年3期)2018-06-23 10:12:28
        利用爬蟲技術的Geo-Gnutel la VANET流量采集
        電子測試(2018年1期)2018-04-18 11:53:04
        第九道 靈化閣入口保衛(wèi)戰(zhàn)
        基于URL和網(wǎng)頁類型的網(wǎng)頁信息采集研究
        電子制作(2017年2期)2017-05-17 03:54:56
        大數(shù)據(jù)環(huán)境下基于python的網(wǎng)絡爬蟲技術
        電子制作(2017年9期)2017-04-17 03:00:46
        国产精品午夜波多野结衣性色| 欧洲熟妇色| 麻豆果冻传媒在线观看| 国产va免费精品观看精品| 人妻少妇精品专区性色av| 99国产精品久久久蜜芽| 一本大道加勒比东京热| 色哟哟亚洲色精一区二区| 人妻少妇精品无码专区二区| 亚洲视频99| 日本中文字幕人妻精品| 老熟女的中文字幕欲望| 中文成人无字幕乱码精品区 | 在线视频中文字幕乱人伦 | 亚洲黄色性生活一级片| 在线观看亚洲视频一区二区| 国产精品高清一区二区三区不卡| 精品无码一区二区三区亚洲桃色 | 精品人伦一区二区三区蜜桃麻豆| 精品久久精品久久精品| 成人欧美一区二区三区在线 | 一区二区三区视频| 四虎影视在线观看2413| 国产av91在线播放| 极品av一区二区三区| 国产又黄又爽又色的免费| 亚洲AV无码国产永久播放蜜芽| 日韩av一区二区在线观看| 国产成人无码av一区二区在线观看| 国产伦精品一区二区三区免费| 国产chinese在线视频| 久久久熟女一区二区三区| 成在线人免费视频| 欧美中文在线观看| 国产一区二区三区在线观看蜜桃| 欧美颜射内射中出口爆在线| 少妇spa推油被扣高潮| 蜜桃av噜噜一区二区三区香| 亚洲最大中文字幕熟女| 永久免费观看国产裸体美女 | 精品久久久久久无码国产|