bot|X(Twitter) APIキー|初心者向け|通知|ついキャスの登録|
bot投稿がやってみたかったのですが、最近たまたま簡単そうな説明を見かけて以来、
少しずつ調べていましたが、Pythonを使ってTwitter API経由で投稿することができました。
今回は、出来たときの事のみ覚書しております。
私と同じくあまり詳しくない人に・・、参考になりましたら幸いです。
目次 |
1: 最初の登録:Twitterのアプリ作成用アカウント
X(旧Twitter)のプレミアムだけではなく、freeのaccountでもbot投稿が出来るということが分かったので、試してみることにしました。
そういえば、X(ex:Twitter)という名前に変更になったのは、2023年以降から~?だったと思いますけど、すっかり定着しつつありますね。
最初の登録について。先ず、自分はプログラムなど殆ど無学な超初心者なので、わからない部分を飛ばしたりします。
「それでも出来たこと」の記録で、初心者でも「まぐれで」出来るかもしれない方法です。
Developerアカウント作成後に、Developer Dashboardにアクセスをし、Project と Appを作成します。
という感じで、最初に「app(アプリ)を作ります」と、いきなり説明が「作れる人向け」なので、
全く自分には関係ないと思っていましたが。。
たまたまだった気がしますが、なぜか出来てしまった・・というくらいに分かっておりません。
以下は、その手順です。
2: デベロッパーアカウント|最初の手順について
普段のx(Twitter)アカウントのままで、developerアカウントを使います。
- 2-1 Developerアカウント作成
- API Key
- API Key Secret
- Access Token
- Access Token Secret
- 2-2 GoogleのColabというツール
- 2-3 Googleのcolab内でシークレットの設定をした方法
Developerアカウントを作ってDeveloper Dashboard(https://developer.x.com/en/portal/dashboard)にアクセスをしたら、
は、アプリ作っていない筈ですが作れていました。
(見よう見真似で登録して設定をみただけ・・)
あと、Pythonのインストールが必須みたいな説明が多いのですが。。続きはこの下すぐです。
GoogleのColabというツールで出来ました。
「お試しだけなら、これで充分だ」というサイト様がおられましたので、参考になりました。
そして、初心者なのに一歩を踏み出すことが出来ました。
ノートブック名は、「twtter-bot.ipynb」とありますが、自分で決めた名前ではなく
自動だったか、コピペ元で書いてあったもので、この名前で作成します。
XのDeveloper Dashboardのページを見ながら、Googleのcolab内で左サイドバーの鍵マークをクリック、
シークレットの設定のため以下の『内容』の項目(2-1 Developerアカウント作成)を埋めます。
I am currently learing programming with python.As part of that~~
- CONSUMER_KEY ーーーAPI KEYの内容
- CONSUMER_SECRET ーーAPI KEY SECRETの内容
- ACCESS_TOKEN ーーーAccess Tokenの内容
- ACCESS_TOKEN_SECRET ーーAccess Token Secretの内容
- 2-4 +コード+テキストのページの記述
次のコードで Python の秘密鍵にアクセスします。
from google.colab import userdata
userdata.get('secretName')
とあり、これが一番上にくるものらしいです。全体を通したコードは以下にあります。
実行は、「Ctrl」+「Enter」か、左に再生マークとありますが、私は右側にそれらしきものがあります。
コーディング開始とかAiで生成しますとか書いてあるので分からなくて調べましたが
新しく
画面の右上にある、鉛筆のようなアイコンをクリックすると編集ができるようになります。
from google.colab import userdata import tweepy
登録した認証情報を取得。
ck = userdata.get('API_key') cs = userdata.get('API_KEY_SECRET') bt = userdata.get('BEARER_TOKEN') at = userdata.get('ACCESS_TOKEN') ats = userdata.get('ACCESS_TOKEN_SECRET')
クライアントにシークレット情報を埋め込む。
client = tweepy.Client(consumer_key=ck, consumer_secret=cs, bearer_token=bt, access_token=at, access_token_secret=ats)
投稿するテキストを指定。
tweet = "test tweet"
投稿
client.create_tweet(text=tweet)
コードを実行するには、セルの左側の再生ボタンをクリックするか、キーボードショートカットの「Shift + Enter」を押します。
これが終わって、x(Twitter)見てみると、「test tweet」という投稿がありました。
この部分に違う文字入れたら(普通に140文字の文章もできる)、
あとは、日付とか時間の設定ができればbotになりそうですね。。
AIに作ってもらっても良いかもしれません。
3: 久しぶりに触って分からない場合のキーの確認方法
初めの1回目は直ぐにできましたが、其のあと数ヶ月放置していて、そのままでは使えない様子です。
時間の指定を使おうと思ったのですが出来ず。
どうも別のキーも追加しないと出来ないみたいです。前に出来た方法なのに。
時間の指定は無理ならしょうがないので同じコードを使ってツイート1回だけ試そうと思い、
投稿する文を変えて実行してみても・・出来ませんでした。
確認方法
Developer Dashboard(https://developer.x.com/en/portal/dashboard)にアクセスをしたら、
project appという項目の下にカギとネジ型アイコンがあるので、そこをクリック
settings」とある右に「keys and tokens」のタブを見るとkeyが見れます。
「キーは一度しか表示されません」ので、忘れてしまったら作り直しです。
4: ついキャスの登録|思ったこと
TwitterはXですが、ついキャスは名称が変わらず(当たり前・・)
配信で見たいものがあったのですが、有料の場合には支払い方法などの他
個人情報を色々と(以下の通りです)登録しないといけなくなりました。
動画を見るだけなのに口座番号・生年月日まで・・・ せめてPayPalとか、プリペイドカード使えないのか?これが使えたら問題なく登録できます。 外国のサービスだと、PayPalは標準化していて、名前はニックネームのみ、生年月日どころか 年齢の入力もなかったりしました。
プライバシーポリシーのページなど見て何となく気になりました。 必要な個人情報は以下の通りです。
利用規約 - ツイキャス
(6)「登録アカウント情報」 本サービスの提供を受ける目的で,登録ユーザーがモイに提供する氏名,住所,年齢,生年月日,金融機関の口座番号,電話番号,メールアドレス,ニックネーム,ハンドルネームその他個人を特定できる情報(Facebook,Twitter,mixi等モイ以外の第三者が運営するプラットフォームサービスから取得するアカウント情報を含みます。 )
5: 有料の料金|参考・終わり
色々できるようにするには、有料のプラン
Twitterのデベロッパーアカウント、basic$200、pro$5000/月
Google Colabのproプラン、1179円~5767円/月
です。
最後に、
今回の方法は、分からないままで偶々出来たのですが
後で同じことをやろうとしても上手くいきませんでした。(数ヶ月前ですっかり忘れている)
原因について薄々思ったことは、前回のファイルを使いまわししようとしたからダメだった様です。。
最初にファイルを新規作成すれば良いだけかも知れませんが、その方法が分からないという。
ここで身も蓋もないことを言いますが、botはアプリとか使ったほうが楽だし確実かもしれません。。
ここまで読んで頂きありがとうございました。
いかがでしたでしょうか。
何か少しでも参考になれば幸いです。
良かったら気が向いた時にでもまた覗いてやってくださいませ。
よろしくお願い致します。
参考サイト・情報源:
https://qiita.com/YakitoriBoyz/items/c96fc8ec6d75c8211b4b
デベロッパーポータルのページ
https://developer.x.com/en/portal~
初心者向けガイド: Twitter APIの取得方法|2020–2024 30代機械系エンジニアの趣味ブログ
https://enjoy-life-fullest.com/2024/01/05/%E5%88%9D%E5%BF%83%E8%80%85%E5%90%91%E3%81%91%E3%82%AC%E3%82%A4%E3%83%89-twitter-api%E3%81%AE%E5%8F%96%E5%BE%97%E6%96%B9%E6%B3%95/
毎日色々と巡回して自動で通知してくれる便利Botを作ってみる【応用可】
https://qiita.com/aocattleya/items/53388f5915cf38d6c97b
Twitter APIを取得せずbotを作る方法
https://note.com/watayoshi1984/n/n03aee0f7708e
Twitter api freeでpythonを利用してbot(ボット)を作る
https://qiita.com/nekocat777/items/965a85195c4c7438e2be
PythonとTwitterAPIで作るブログ記事自動ツイートbot
https://qiita.com/hal-tmhd/items/c992d3262f0c0d6e4492
[初心者向け]たった50行のコードでTwitter Botを作成してみる
https://qiita.com/Ceres_KN/items/e85d3c27338d4414bb85
X(Twitter)のBot(ボット)の作り方を初心者にも分かりやすく解説
https://greencoatle.soratobunezumi.co.jp/it/twitter-bot/
https://ja.twitcasting.tv › indexlicense.php
【Google Colabの使い方】Pythonをブラウザで始められる開発環境を解説!/ Pythonのソバ 実務の業務効率化を目指すPython入門サイト
https://pythonsoba.tech/google-colab/#st-toc-h-6
コメント
コメントを投稿
読んで頂きありがとうございます。
お気軽にコメントして頂けると嬉しいです。
返事は90%くらいお返ししますが、めちゃくちゃ遅い場合があります。
気長にお待ちください。