こんにちは。新卒です。
今回は、前回(1. 各種キーの申請と取得)申請し、取得した各種キーを使用し、ツイートの投稿と取得をします。
使用するライブラリはtweepyです。tweepyとは、Twitter APIを使用した投稿、取得、いいね、リツイートなどの各操作を簡単に行うことができるライブラリです。
以下にpythonとtweepyのバージョンを示します。
python | 3.78 |
tweepy | 3.90 |
ライブラリのインストール
WindowsであればPowerShellもしくはコマンドプロンプトで、Macであればターミナルで以下のコマンドを実行してください。
$ pip install tweepy
これで最新版のtweepyがインストールできました。
8/18現在ではtweepy 3.9.0がインストールされました。
ツイートの投稿
#tweetを投稿
import tweepy
# 取得した各種キーを格納-----------------------------------------------------
consumer_key ="取得したconsumer key"
consumer_secret ="取得したconsumer secret"
access_token="取得したaccess token"
access_token_secret ="取得したaccess token secret"
# Twitterオブジェクトの生成
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
api = tweepy.API(auth)
#-------------------------------------------------------------------------
# ツイートを投稿
api.update_status("tweetを投稿")
デバッグすると以下の通り、ツイートの投稿出来ました!
# 取得した各種キーを格納-----------------------------------------------------
#-------------------------------------------------------------------------
↑この部分はtwitterアカウント(各種キーを取得したアカウント)にログインするといったイメージなので、Twitter APIを使用する際にはコピペでいいと思います。
api.update_status("tweetを投稿")
ここでツイートの投稿を行います。
ツイートの取得
# ツイートを取得
import tweepy
# 取得した各種キーを格納---------------------------------------------
consumer_key ="取得したconsumer key"
consumer_secret ="取得したconsumer secret"
access_token="取得したaccess token"
access_token_secret ="取得したaccess token secret"
# Twitterオブジェクトの生成
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
api = tweepy.API(auth)
#-------------------------------------------------------------------
#ツイートを投稿
Account = "ユーザーID" #取得したいユーザーのユーザーIDを代入
tweets = api.user_timeline(Account, count=200, page=1)
num = 1 #ツイート数を計算するための変数
for tweet in tweets:
print('twid : ', tweet.id) # tweetのID
print('user : ', tweet.user.screen_name) # ユーザー名
print('date : ', tweet.created_at) # 呟いた日時
print(tweet.text) # ツイート内容
print('favo : ', tweet.favorite_count) # ツイートのいいね数
print('retw : ', tweet.retweet_count) # ツイートのリツイート数
print('ツイート数 : ', num) # ツイート数
print('='*80) # =を80個表示
num += 1 # ツイート数を計算
デバッグすると以下の通り、ツイートの取得が出来ました!
(実行結果の一部抜粋です。)
tweets = api.user_timeline(Account, count=200, page=1)
ここで、取得するユーザー、1ページあたりに取得するツイート数、ページを指定します。
ユーザーを指定しない場合、自分自身のツイートを取得します。
1ページあたりに取得するツイート数は0~200の範囲です。
また取得できるツイートの最大件数は3200です。
まとめ
これでツイートの投稿と取得ができました。
このほかにも、フォローやいいね、リツイートなど様々なことを行うことができます!
tweepyのドキュメントを参照し、様々なことをしてみると面白いかもしれません!
今回ソースコードを公開していますが、各種キーは他人には知られてはいけないものなので、ソースコードを公開するときは気を付けましょう。
typo報告:
「$ pip install teepy
これで最新版のtweepyがインストールできました。」