1. 程式人生 > >twitter api的使用

twitter api的使用

做個專案,須要用到twitter的介面 (如果用過新浪的微博介面,會發現大同小異)

訪問twitter 須要掛vpn,第一天用朋友的killwall 連上一會就斷,異常不爽,然後用了‘我的VPN’效果還不錯  偶爾會斷掉,關鍵是免費的,速度也不錯

首先註冊個賬號,然後訪問twitter的說明文件,介面列表,這有個中文文件有些老 但不妨礙, 英文結合這個 能明白差不多了;

注意這個介面須要授權 並且有呼叫次數的限制;

呼叫介面之前須要先建立一個應用,name,description,website按自己需求來填寫,由於須要先在本地除錯 我填寫了http://127.0.0.1/twitter/index.php這個地址,回撥地址填寫的是http://127.0.0.1/twitter/callback.php  最後點選‘create your  twitter application’  完成應用的建立

開啟剛給建立的應用,在應用的下面有keys and Access Token選項 開啟他, 裡面的API Key ,API Secret後面會用到

現在須要下載一個Twitter 認證的類庫,百度了好多,發現一個名叫twitteroauth的php庫很不錯 很小,裡面的例子也很詳細;下載好之後 放到本地工作目錄下的twitter下面

開啟config.php 填寫好配置檔案(金鑰在 keys and Access Token選項 下面)

開啟index.php  修改23行的介面呼叫地址為我所需要的statuses/home_timeline,然後訪問:http://127.0.0.1/twitter/index.php

經過跳轉提示登入twitter賬戶(已登入的不會提示)  然後跳轉到授權頁面 同意授權,最後返回首頁,首頁會羅列出,授權人的twitter和授權人關注的人的最新推特,預設是返回20條,可以通過引數來進行配置

如果有錯誤會打印出錯誤資訊,錯誤程式碼檢視

基本的操作就完成了 注:以上操作都須要在VPN連結正常情況下完成

下面是部署到伺服器上了,國內的伺服器也須要翻牆,所以我用的是泡菜國的伺服器,

ftp一直連不上,一直以為配置出錯了,最後居然是我連的是日本的VPN  無法連結韓國的伺服器,果斷斷了VPN 連結一切正常,

最後修改twitter應用的配置,然後再訪問伺服器,一切正常。總算完成了。

PS:由於我做的專案是自動抓取,所以不可能每次都須要讓使用者來授權,如何來避免授權呢?

理一下授權的順序:訪問應用---->監測是否存在金鑰---->不存在請求twitter-----》登入授權-----》返回應用

所以只須要在監測金鑰時 稍微修改即可:

上述流程的金鑰是儲存在session中的,列印session,將session的值記錄,訪問應用的時候 直接賦值金鑰即可,跳過授權

PS PS:新浪微博與twitterd的文件地址: