#本投稿の背景
※申請画面が初投稿時(2018年9月)と変わってましたので、内容を更新しました ※2019年8月時点の情報となります
Python Twitterからツイートを取得してテキスト分析(wordcloudで見える化) という記事を書いていて、
Twitter APIのアカウント申請 について、再度画面キャプチャーの確認をしたら
アカウント登録申請方法が変わっていました。。
Twitter、API使用条件を厳格化 「厳しすぎる」開発者から悲鳴も
本投稿では変更された Twitter API 登録 (アカウント申請方法) について画面キャプチャー、メールのやりとりもキャプチャーして纏めました。結果としてTwitter API 登録は承認されました。
※今後、アカウント申請方法は変更されると思いますので
本投稿のタイトルには、アカウント登録申請したときの日付(2019年8月時点)と記載してます
Twitter APIの登録申請を検討している方の参考になれば幸いです
#Twitter API でできること
TwitterのAPIについてより
>Twitterにある情報をできるだけ広く共有するために、
>API (アプリケーション・プログラミング・インタフェイス)を
>通してTwitterデータにプログラムレベルでアクセスし、企業、開発者、利用者に提供します。
⇒TwitterAPIを使用してTwitterのつぶやきを取得したり、APIを使用したアプリからツイートやリツイートしたり、
いいねをつけたり等できます。
Python Twitterからツイートを取得してテキスト分析(wordcloudで見える化) では
Twitterのつぶやきを取得しています。
#期間 (アカウント申請から 承認されるまで)
実際にかかった時間は、1日
=====
2019年8月3日 新たにTwitterアカウント作成して Twitter APIを登録申請
2019年8月3日 Twitter社から TwitterAPI の使用用途についての確認メールがきた
2019年8月3日 TwitterAPIの使用用途を記載してメールを返信
2019年8月3日 Approveされたメールが届いた!
=====
※承認まで短時間で行われるようになってました(2018年9月時点では、12日かかっていました)
#Twitter API 登録 (アカウント申請方法) から承認まで
以下のステップを画面キャプチャを使用して説明します。
1.Twitterアカウント作成して Twitter APIを登録申請
2.Twitter社から Twitter API の使用用途についての確認メールがきた
3.Twitter APIの使用用途を記載してメールを返信
4.Approveされたメール
##1.Twitter API 登録申請
###1.Twitter Developerのページにアクセス
https://developer.twitter.com/ にアクセス
###2.Twitter Developerにログイン
[Sign In]をクリック
Twitter登録で使用したメールアドレス、パスワードを入力してログイン
###3.Twitter API 登録(アカウント申請)
[Apply]をクリック
[Apply for a developer account]をクリック
Twitter APIを使用する目的はどれ?ときかれるので該当するものを選択して、
[Next]ボタンをクリックします
[Add a valid phone number]をクリックします
[Japan]を選択して、携帯番号を入力して、[Next]をクリック
携帯に送信された認証コードを入力して、[Verify]をクリック
認証コードを入力すると、[Next]がクリックできるようになるのでクリック
Twitter API使用用途の入力
Twitterデータをどのように分析するのかを説明。
Twitter API使用用途の詳細入力
※使用用途に該当する場合は、英語で説明。該当しない場合は、[Yes]ボタンをクリックすると[No]にします
3.Twitterデータを外部公開する場合はその方法と公開場所を説明
入力確認画面が表示され、問題ないのであれば、[Looks Good!]をクリック
利用規約画面が表示されるので同意
画面を下にスクロールさせます
同意のチェックを入れ、[Submit Application]をクリック
申請完了の画面が表示される(このタイミングでメールが送られる)
送信されたメール
メールにある[Confirm your email]をクリック
⇒レビュー中と内容のページにとばされる
登録申請から約3時間後、Twitter社からメールがきました。
##2.Twitter 社から Twitter API の使用用途についての確認メール
登録申請を完了させるため、追加でTwitter APIを使用する情報がほしいとメールがきました。
追加情報はこのメールに返信でいいとのこと
##3.Twitter APIの使用用途を記載してメールを返信
こんな感じで返信しました。
各確認項目に対して回答しました。
(Google翻訳に手伝ってもらいました。。)
##4.Approveされたメールが届いた
Twitter APIの使用用途を記載してメールを返信して30分後に
登録申請がapproveされたメールがきました
#Twitter APIの認証コードを取得
TwitterAPIを使用して Twitterのつぶやきを取得する際、
認証に「Consumer API Keys」、「アクセストークン情報」が必要になります。
Twitter APiの登録申請の承認後に「Consumer API Keys」、「アクセストークン情報」を取得します。
承認されたメールのリンク[developer account]をクリック
もしくは、https://developer.twitter.com/en/account/get-started
にアクセス
アプリを作らないので一旦自分のQiitaのURLを登録
Twitterのサインインもチェック入れず
その他、Twitterのつぶやき取得には関係ないので未記入
Twitter API を使用したアプリの使い方を記入して[Create]をクリック
※注意点として、登録するアプリ名が自分以外に使用している場合、
エラーになります。画面はアプリ名を「apptest」で作成したケースです
登録画面が表示されるので、[Keys and tokens]をクリック
「Consumer API Keys」、「アクセストークン情報」を確認
#「Consumer API Keys」、「アクセストークン情報」を使用したPythonスクリプト
Python Twitterからツイートを取得してテキスト分析(wordcloudで見える化) より抜粋
import tweepy
import datetime
def gettwitterdata(keyword,dfile):
#Twitter APIを使用するためのConsumerキー、アクセストークン設定
Consumer_key = '<TwitterAPI登録申請して取得した API key>'
Consumer_secret = '<TwitterAPI登録申請して取得したConsumer_secret>'
Access_token = '<TwitterAPI登録申請して取得したAccess_token>'
Access_secret = '<TwitterAPI登録申請して取得したAccess_secret>'
#認証
auth = tweepy.OAuthHandler(Consumer_key, Consumer_secret)
auth.set_access_token(Access_token, Access_secret)
api = tweepy.API(auth, wait_on_rate_limit = True)
#検索キーワード設定
q = keyword
#つぶやきを格納するリスト
tweets_data =[]
#カーソルを使用してデータ取得
for tweet in tweepy.Cursor(api.search, q=q, count=100,tweet_mode='extended').items():
#つぶやき時間がUTCのため、JSTに変換 ※デバッグ用のコード
#jsttime = tweet.created_at + datetime.timedelta(hours=9)
#print(jsttime)
#つぶやきテキスト(FULL)を取得
tweets_data.append(tweet.full_text + '\n')
#出力ファイル名
fname = r"'"+ dfile + "'"
fname = fname.replace("'","")
#ファイル出力
with open(fname, "w",encoding="utf-8") as f:
f.writelines(tweets_data)
if __name__ == '__main__':
#検索キーワードを入力 ※リツイートを除外する場合 「キーワード -RT 」と入力
print ('====== Enter Serch KeyWord =====')
keyword = input('> ')
#出力ファイル名を入力(相対パス or 絶対パス)
print ('====== Enter Tweet Data file =====')
dfile = input('> ')
gettwitterdata(keyword,dfile)
pythonスクリプトの実行方法は [Windows環境でPythonスクリプト(.py)の実行方法] (https://qiita.com/kngsym2018/items/21b6efe4547a78661951) を参考ください。
実行すると「検索キーワード」、「出力ファイル名(相対パス or 絶対パス)」を聞かれますので入力します。
「検索キーワード」:検索キーワードを入力
※-RT をつけると リツイートは除外します
「出力ファイル名」: d:\python\Tweet20180913.txt など