Twythonでラズベリーパイからツイートしよう(前編)
はじめに
今回は、Twitter APIを利用するためのPythonモジュール「Twython」を使用してラズベリーパイからツイートしてみたいと思います。
本記事では、ラズベリーパイ財団公式サイトの下記ドキュメントに沿って進めていきます。
projects.raspberrypi.org
なお、すべてを一つの記事に書くと長くなるため、前編と後編に分けたいと思います。
前編となる本記事では、Twitterディベロッパーアカウントの申請やTwitterアプリケーションの作成などを行います。
後編では、実際にPythonでコードを書いてTwythonでラズベリーパイからツイートを投稿します。
1. PythonとTwythonのインストール
Twythonでツイートするためには、ラズベリーパイに「Python」と「Twython」がインストールされている必要があります。
OSとしてRaspbianをインストールした場合、ありがたいことにこの二つも一緒にインストールされます。実際に確認してみましょう。
Pythonについては、メニュー画面から「Python 3 (IDLE)」を確認できればOKです。
もし見つからない場合には、下記のサイトからダウンロードすることができます。
Download Python | Python.org
Twythonについては、LXTerminalで下記コマンドを実行してみましょう。インストール済みのパッケージが表示されます。
sudo pip3 list
私のラズベリーパイにはバージョン3.4.0のTwythonがインストールされていました。
もしTwythonがインストールされていない場合は、下記コマンドでインストールすることができます。
sudo pip3 install twython
2. Twitter ディベロッパーアカウントの申請
ラズベリーパイからツイートするための大前提として、Twitterのアカウントが必要になります。まだアカウントを持っていない方はTwitterの公式サイトからアカウントを作成しましょう。
https://twitter.com/
自分のTwitterアカウントを用意できたら、次はTwitterディベロッパーアカウントの申請を行います。ディベロッパーアカウントはTwitter APIを使用するために必要となります。
申請は下記サイトから行うことができます。
developer.twitter.com
サイトにアクセスしたら、右上にある「Apply」をクリックします。
続いて「Apply for a developer account」をクリックします。
Twitterディベロッパーツールを利用する理由を聞かれるので、適当なものにチェックを入れて「Next」をクリックします。
住んでいる国やニックネームを選択、入力します。
TwitterのデータやAPIをどのように利用する予定なのかを英語で記入します。必要最低文字数は200文字です。少し面倒ですが入力必須項目なのでがんばりましょう。
利用規約を読んで「Submit Appication」をクリックします。
これで申請は完了です。登録したメールアドレスに申請完了のメールが届くので確認しましょう。
3. Twitterアプリケーションの作成
ディベロッパーアカウントの申請が完了したら、次はアプリケーションの登録です。
Twitter APIを利用するPythonプログラムが自分のTwitterアカウントにアクセスするためには、APIキーとアクセストークンというものが必要になります。これらを取得するには、Twitterアプリケーションを作成しなければなりません。
なお、APIとアクセストークンの詳細については、下記ブログの説明が分かりやすく参考になります。
qiita.com
事務的な申請手続きが続きますが、アプリケーションの作成をしていきましょう。
まず、下記リンクから作成フォームを開き、「Create an app」をクリックします。
https://developer.twitter.com/en/apps
またもや英語となりますが、入力必須項目(required)を埋めます。必須項目以外の箇所は空欄のままでも大丈夫です。
「Website URL」についてですが、ラズベリーパイ財団のドキュメントによると、もし特に入力する対象がない人は彼らのサイトのURL(https://www.raspberrypi.org/)を入力してもいいそうです。私はこのブログのURLを入力してみました。
「Create」ボタンをクリックすれば作成は完了です。
さっそくAPIキーとアクセストークンを確認しましょう。
「Keys and tokens」セクションをクリックすると、「Consumer API Keys」欄にAPI KeyとAPI secret keyの値が表示されています。
アクセストークンについては、「Access token & access token secret」欄の「Create」ボタンをクリックすると、値が表示されます。