Twitter API の tweepyについての覚書。
公式リファレンスをもとにしていますが、一部説明を割愛しているところもあります。
サンプルコードは自前です。
まえじゅんび
import tweepy
auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
auth.set_access_token(ACCESS_TOKEN, ACCESS_SECRET)
api = tweepy.API(auth)
Status系メソッド
update_status()
処理
tweetする。
戻り値
Statusオブジェクト
update
# do tweet
tweet_test = api.update_status('this is test tweet')
# print
print tweet_test.text
>>> this is test tweet
get_status(id)
処理
指定したID値を持つStatusオブジェクトを取得する。
戻り値
Statusオブジェクト
get
# tweet情報を格納したStatusオブジェクト
tweet_obj = get_status(tweet_test.id)
print tweet_obj.text
>>> this is test tweet
destroy_status
処理
指定したID値をもつStatusオブジェクトを破棄する。
####戻り値
Statusオブジェクト
destroy
tweet = api.update_status('this is destroy test')
id = tweet.id
d_obj = api.destroy_status(id)
# 破棄した旧Statusオブジェクトの情報が取得される
print d_obj.text
>>> this is test tweet
# idが示すstatusオブジェクトはすでに存在していないのでエラーとなる
api.destroy_status(id)
>>> error
retweet(id)
処理
指定したID値をもつStatusオブジェクトをリツイートする
戻り値
Statusオブジェクト
rt
tweet = api.update_status('RT test')
api.retweet(tweet.id)
User系メソッド
me()
処理
自身のUserオブジェクトを取得する。
####戻り値
Userオブジェクト
me
tweet = api.update_status('user_test')
tweet_user = tweet.user
me = api.me()
if(tweet_user.id == me.id):
print('tweet_user is me')
else :
print('tweet_user isnt me')
>>> tweet_user is me
get_user(user_id / screen_name)
処理
指定したUserオブジェクトのID、またはUserオブジェクトのscreen_name値に合致するUserオブジェクトを取得する
戻り値
Userオブジェクト
get_user
tweet = api.update_status('get user test')
# tweetをおこなったuserのid
tweet_user_id = tweet.user.id
# tweetをおこなったuserの @ で始まる名前
tweet_user_screenName = tweet_user.screen_name
user_a = api.get_user(tweet_user_id)
user_b = api.get_user(tweet_user_screenName)
# 取得したUser情報が等しいかの判定
if(user_a.id == user_b.id):
print('users are same')
else:
print('users arent same')
search_users(q[, per_page][,page])
処理
指定した名称を持つUserオブジェクトを取得する
戻り値
Userオブジェクト
search_user
#'tarou'という名称を部分的に設定しているuserを検索する
users = api.search_users(q='tarou')
# 取得したuserのscreen_nameを表示する。実userなのでマスク処理を施す
for name in result:
n = name.screen_name
print n.replace(n[0:3], '***')