国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

編寫Ruby腳本來對Twitter用戶的數據進行深度挖掘

2019-10-26 19:28:24
字體:
來源:轉載
供稿:網友

Twitter以及一些API

盡管早期的網絡涉及的是人-機器的交互,但現在的網絡已涉及機器-機器之間的交互,這種交互是使用web服務來支持的。大部分受歡迎的網站都有這樣的服務存在——從各種各樣的Google服務到LinkedIn、Facebook和Twitter等。通過web服務創建的API,外部的應用可以查詢或是操縱網站上的內容。

web服務可以使用多種方式來實現。目前最流行的做法之一是表述性狀態轉移(Representational State Transfe, REST)。REST的一種實現是通過為人熟知的HTTP協議,允許HTTP作為RESTful架構的媒介存在(使用諸如GET、PUT、POST、DELETE一類的標準HTTP操作)。Twitter的API是作為這一媒介之上的一個抽象來進行開發的。在這一做法中,沒有涉及REST、HTTP或是XML或JSON一類的數據格式的知識,而是代之以清晰地整合到了Ruby語言中的基于對象的接口。

Ruby和Twitter的一個快速展示

讓我們來探討一下如何在Ruby中使用Twitter API。首先,我們需要獲取所需的資源,如果你像我一樣在用Ubuntu Linux®的話,就使用apt框架。

若要獲取最新的完整的Ruby分發版本(大約13MB的下載量),使用這一命令行:

$ sudo apt-get install ruby1.9.1-full 

接著使用gem實用程序來抓取Twitter gem:

$ sudo gem install twitter 

現在你已經有了這一步驟所需的一切了,我們繼續,測試一下Twitter的包裝器。這一示例使用一個名為交互式的Ruby外殼(Interactive Ruby Shell,IRB)的外殼程序,該外殼程序允許實時地執行Ruby命令以及使用語言進行實驗。IRB有著非常多的功能,不過我們只用它來做一些簡單的實驗。

清單1展示了與IRB的一個會話,該會話被分成了三段以便于閱讀。第一段(001和002行)通過導入必需的運行時元素來做好環境方面的準備(require方法加載并執行指定的庫)。接下來的一段(003行)說明的是使用Twitter gem來顯示從IBM® developerWorks®發出的最新tweet消息。如所展示的那樣,使用Client::Timeline模塊的user_timeline方法來顯示一條消息,這第一個例子說明了Ruby的“鏈方法”的功能。user_timeline方法返回一個有著20條消息的數組,接著鏈入到方法first中,這樣做是為了從數組中提取出第一條消息(first是Array類的一個方法),接著從這一條消息中提取出文本字段,通過puts方法把它放到輸出中。

接下來的一段(004行)使用了用戶定義的位置字段,這是一個不限形式的字段,用戶可以在其中提供有用的或是無用的位置信息。在這一例子中,User模塊抓取了位置字段所限定的用戶信息。

最后一段(從005行開始)研究了Twitter::Search模塊,這一搜索模塊提供了極其豐富的用來搜索Twitter的接口。在這一例子中,首先是創建一個搜索實例(005行),接著在006行指定一個搜索,搜 LulzSec用戶在最近發出的包含了why這一詞的消息,結果列表已經過刪減和編輯。搜索設置會一直存在在那里,因為搜索實例保持著所定義的過濾條件,你可以通過執行search.clear來清除這些過濾條件。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 沁源县| 商都县| 高清| 漾濞| 大姚县| 南投市| 游戏| 瑞丽市| 武山县| 洛浦县| 精河县| 景洪市| 阳原县| 和硕县| 额济纳旗| 永定县| 青田县| 安庆市| 锦屏县| 边坝县| 五峰| 耿马| 安塞县| 东阿县| 梨树县| 仪陇县| 石景山区| 石阡县| 乳源| 山东| 都兰县| 和顺县| 清苑县| 龙岩市| 泰顺县| 太康县| 青岛市| 中卫市| 鄂托克旗| 巨野县| 黔西|