【Twitter API】Twitterの予約投稿を作る【Python】
ブログを作成していると、アクセスアップのためにTwitterを利用するようになるかと思います。
ですが、ずーーっとツイッターに張り付いてるほど暇じゃないですよね?
お前いつだってヒマそうじゃないか
そこで「あらかじめツイート内容を作成して予約投稿」という方法でどんどん発信できるようにしましょう。予約投稿できるアプリも世の中には沢山ありますが、この記事ではPythonを使って自作してみます。
こんな感じで投稿できます。
まじてすと
— へーさく🌳外資系副業エンジニア (@heisakusaku) February 13, 2020
この記事はプログラミングする人向けです。
プログラミングしないで予約投稿をしたい場合はSocialDog使いましょう。
紹介記事: >>>【フォロワー数向上】Twitter便利アプリSocialDog
この記事の内容:
- まずはTwitter Developer申請
- Twitterアプリ登録
- Twitter APIアクセスキーの取得
- Pythonスクリプト作成(Tweepyライブラリ)
まずはTwitter Developer申請
まず最初にTwitterの開発者申請を行います。
英語でいろいろ書く場所があるので意外とハードル高いかもしれません。
web developer.twitter.com
上記サイトにアクセスするとこのような画面になると思います。
ここでどんなアプリを作成するつもりか登録する必要があります。恐らく「Professional」とかにすると申請のハードルが上がると思うので、無難そうな「Hobbyist」にしましょう。
nextを押すと↓のような画面になります。
ここはユーザ情報入れるだけなので自分のTwitterのアカウント、Twitterの人にどう呼ばれたいか(なんでこんな項目?笑)等を入れて進みましょう。
そして最後の難関です。
結構な文字数で、どんなアプリを作るつもりなのか、あれは使うか?、これは使うか?、など事細かに書く必要があります。
僕の場合、基本スタンスは「ホビーユーザーだし、まだTwitter APIで何ができるかわかってないけどTweet Schedulerとか作るつもり」みたいな感じで書きました。
この申請の後、メールでも同様の内容を問い合わせてきます。。。
「Webで登録時に書いたけど?」と返信すると「もう一度知りたいから書いてくれ」と返ってきます。仕方がないのでまた「ホビーユーザーだしTwitter APIで何ができるかわからないから今の段階で作るものを全部書くことはできない。ただ、Tweet Schedulerは作ると思う」と返すと、無事申請が通りました。
半ギレだったのが良かったのかな?
アホを相手にしたくなかっただけだぞ
ちなみに、ここまでのやり取り全部英語です。
Twitterアプリ登録
無事申請が通ったら、アプリの登録を行います。これはアプリ毎に必要です。
今回「Twitter予約投稿アプリ」を作るので、それを登録します。
デベロッパーサイトで自分のアカウントのメニューから「Apps」を選びます。
次の画面の右上にある「Create an App」を選びます。
次の画面でアプリの詳細を記載します。
ここで重要なのは、
- App Name : 他の人のアプリと被らないユニークな名前。英数(例:tweet_scheduler_by_heisaku)
- Description : どんなことをするか適当に短く(例:perform scheduled tweet)
- Website URL : 自分のウェブサイトのURLなど。
(本来はAppが置いてある場所ですが、今回はローカルスクリプトなので適当) - App Usage : 結構文字数書かないといけないですが、アプリの概要です。
僕が今回作ったのは以下の画面。
Twitter APIアクセスキーの取得
アプリの登録が終わるとアクセスキーを取得します。アプリからAPIを叩くときに必要な認証キーです。今までの登録作業はこれを得るための作業です。
画面上部の「Keys and tokens」を選びます。画面上にメニューが無い人は、右上の自分のアカウント名→「Apps」→登録したアプリ、と進んでいってください。
以下の画面から「API Key」「API Token」を記録してください。さらに、下の方のボタンで「Access Key」「Access Token」を生成して記録してください。
Pythonスクリプト作成(Tweepyライブラリ)
以下がメッセージを投稿するPythonのサンプルスクリプトです。Tweepyというライブラリを使っているのでかなり簡単に書けます。
import tweepy
# ここに取得したキーを書く
CONSUMER_KEY = 'xxxxxxxxxxx'
CONSUMER_TOKEN = 'xxxxxxxxxxx'
ACCESS_KEY = 'xxxxxxxxxxxx'
ACCESS_TOKEN = 'xxxxxxxxxx'
# tweepyによるOAuth認証処理
auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_TOKEN)
auth.set_access_token(ACCESS_KEY, ACCESS_TOKEN)
api = tweepy.API(auth)
#ツイートの実行
api.update_status("テストfrom Twitter API")
ツイートは思い立った時にした方がコメントに対してレスポンスしやすいってのはあると思うけど、フォロワーを増やしたいなら、
一日一個の予約投稿を時間かけて作る
というのをお勧めします。 気分的に楽になるし、一日一本気合の入ったツイートができます
誰の言葉?
僕
なーんだ。がっかり
続きの記事:
【Twitter API】Twitter 情報取得・返信・リツイート【Python】 | enjoyall
【Twitter API】自己リツイートの自動化でフォロワー増【Python】 | enjoyall
過去記事一覧: アクセスアップ・SEO関連の記事一覧
enjoy!