最近、Pythonの勉強をしていて学んだことを、ツイッターで発信していたのですが、
しばらくするとタイムラインが流れて、自分が何をツイートしたのかわからない状態になるんですよね・・・。
効率良くツイートの内容を管理、投稿する方法がないかなと頭を悩ませました。
私の答えはこちらです:
- ツイートの管理はエクセルでする!
- 管理したツイートはPythonで自動投稿する!
ツイートの投稿についてはPythonが便利だと思います。なぜなら、
- 投稿までの手順が簡単! ←私の場合、所要時間は半日以下
- 時間指定もできる!
- Pythonの勉強になる! ←私の個人的な理由笑
例えば、こんなかんじのツイートができました。普通のツイートとかわりませんね!
#Python を使ってツイートすることができるみたいですね。
例えば、このツイートのように!(Tweetもとが私のアプリになってます!)
この機能を使ってTipsをツイートして、
同時にローカルのデータベースに整理できるようにすれば、
あとから自分でTipsを復習することができる!!— YutaKa (@801YutaKa108) September 29, 2019
以下の手順でPythonからツイートできるようになります。
さらに作成したスクリプトを更新して、エクセルからのデータ取得、定期的に自動実行できるようになれば、ツイッターの管理から自動ツイートまで完成です!
①:Twitter APIキーの取得
そもそもAPI(アプリケーション・プログラミング・インタフェイス)とはなんでしょうか?ツイッターのヘルプによると:
APIはコンピュータープログラム同士がお互いに情報を要求、配信できるようにするための「会話」方法です。https://help.twitter.com/ja/rules-and-policies/twitter-api
わかったようなわからないような・・・。Pythonなど外部プログラムでツイッターを利用するために必要ということですね。
Twitter Developer Platformにアクセスして、Developerアカウントの登録を行うと次の4つの情報が取得できます。
- API key
- API secret key
- Access token
- Access token secret
この登録方法についての解説はWeb上で飽和状態なので割愛しますが、なかなか審査を通らないという話もありますので、私の記入したアプリ使用目的を記載しておきます。次のような感じで記入したら登録した直後に承認されました。
I will use this app. to tweet the tips about python listed in my Excel sheet. I'm not planning to retweet, reply, and send direct messages with this app.
②:開発環境の構築(Twythonモジュールのインストール)
Anaconda でTwythonモジュールを含んだ仮想環境を構築して、Pycharm上でスクリプトを書きました。
始めのうちは仮想環境構築に抵抗がありますが、慣れると一瞬でできるようになりますよ! 具体的な方法は、以下の記事をご覧ください!
③:スクリプトの作成
まずはtwtythonのクラスをimportしましょう!
from twython import Twython
次に①で準備しておいた、Keyを渡してTwythonインスタンスを作成します。
APP_KEY = "******" APP_SECRET = "******" OAUTH_TOKEN = "******" OAUTH_TOKEN_SECRET = "******" twitter = Twython(APP_KEY, APP_SECRET, OAUTH_TOKEN, OAUTH_TOKEN_SECRET)
最後にツイートしたい内容を.update_status()メソッドに渡すとツイートされます!
myTweet = """ 今日はPythonからtweetできるようになった方法をブログにまとめます! """ # ツイート! twitter.update_status(status=myTweet)
実際のツイートがこちらです!
今日はPythonからtweetできるようになった方法をブログにまとめます!
— YutaKa (@801YutaKa108) October 3, 2019
実行すると本当にツイートされるので、変な内容でテストランしないように気を付けましょう!!!
まとめ
3ステップで簡単にPythonからツイートできるようになりました!これを他のプログラムと組み合わせれば、効率よくツイートの管理、投稿ができますね!
参考文献
次のサイトを参考にさせていただきました。皆さんのような先駆者の方々のおかげで、私のような初心者でもPythonを使用できています。
本当にありがとうございます!!!
もりさんのプログラミング手帳 TwitterDeveloperアカウントの申請とAPIキー取得(GAS×TwitterBot①)