倉下さんのツイートを見て「そういうのもあるのか」となったので自分でも試してみました。

最終的にはターミナルから投稿できると最高です。

参照するもの

手順

1. インストール

pip install tweepy

です。(当然わかるでしょ的な話なのかもですが、公式ドキュメントのGetting Startedあたりに書いといてくれても親切だなーとは思いますね。)

2. TwitterのAPIに登録する

私は過去に登録しておいたものがあったので、一旦それを流用しました。

これから取得する方は以下を参考。(わりと面倒です。)

Twitter API 登録 (アカウント申請方法) から承認されるまでの手順まとめ ※2019年8月時点の情報 - Qiita

TwitterAPI

必要になるのは

  • API key
  • API secret key
  • Access token
  • Access token secret

の4つです。

3. サンプルを動かす

公式にサンプルが載っているので、そちらをそのままコピペ&APIトークンを設定して実行してみます。

import tweepy

auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)

api = tweepy.API(auth)

public_tweets = api.home_timeline()
for tweet in public_tweets:
    print(tweet.text)
  • consumer_key
  • consumer_secret
  • access_token
  • access_token_secret

に、先で取得しておいた

  • API key
  • API secret key
  • Access token
  • Access token secret

をそれぞれStringで書いてあげて、あとはpythonファイルを実行するだけ。

実行結果

自分のTLに出てくる直近のツイートが表示されました。

公式のAPIリファレンス — tweepy 3.6.0 ドキュメントによると、最新の20ツイートが表示されるようです。さらに表示したい場合などは次のページへとたどっていくスタイルです。(よくあるやつ)

4. 自分のアカウントでツイートする

APIリファレンス見てもツイートの仕方がよくわからなかったのでググったところ、update_statusを使えばいいことが判明。

api.update_status("tweepyから投稿だ")

参考:TweepyでTwitterに投稿する - Qiita

実際にやってみた結果がコレです。

実行結果

細かい話ですが、投稿クライアントに出ているelectron-test-yoshikiitoのところは、過去にElectronのTwitterクライアント作ったときのAPIキーなどを流用しているためです。APIキー等々を新規に取得するときは、ここに表示されてもいいような名前にしておきましょう。

(どこかのオプションで表示無しにできそうなものですけどね。)

とりあえず、投稿するところまではいけました。意外とかんたん。