2022年07月15日
川俣晶の縁側ソフトウェア技術雑記total 1904 count

ネイティブアプリからTwitterの複数アカウントに投稿するアプリを作る際の認証

Written By: 川俣 晶連絡先

テーマ §

Twitterのbotを作るとします。

複数のアカウントへの自動投稿を行いたいとします。

認証は最初の1回だけであとは自動化したいと思います。

前提 §

Twitterの開発者アカウントAと、そうではないアカウントBがあるとします。

どちらにも自動投稿したいと思います。

アクセス情報の収集手順 §

  1. Twitterの開発者アカウントAで、API KeyとAPI Key Secretを取得します。
  2. 初期設定では、Readしか許可されていないので、OAuthの設定でWriteも許可します。
  3. tw-oob-oauth-cliをダウンロードします。64bit Windowsならtw-oob-oauth.windows_amd64をダウン路ロードし、拡張子をexeに変更します (ここ重要)
  4. WebブラウザでアカウントAにログインします
  5. コマンドプロンプトでtw-oob-oauth.exe --key [アカウントAのAPI Key] --secret [アカウントAのAPI Key Secret]を実行します
  6. 画面に表示されたURIにアクセスして番号をコピーします
  7. コマンドプロプトに戻って張り付けてEnterを押します。
  8. アカウントAのAccess TokenとToken Secretが表示されるので記録します
  9. WebブラウザでアカウントBにログインします
  10. コマンドプロンプトでtw-oob-oauth.exe --key [アカウントAのAPI Key] --secret [アカウントAのAPI Key Secret]を実行します
  11. 画面に表示されたURIにアクセスして番号をコピーします
  12. コマンドプロプトに戻って張り付けてEnterを押します。
  13. アカウントBのAccess TokenとToken Secretが表示されるので記録します

アクセス方法 §

 4情報があれば、TweetinviAPIを使っているならこんな感じでつぶやけるようになります。

var userClient = new TwitterClient(consumerKey, consumerSecret, accessToken, accessTokenSecret);

var tweet = await userClient.Tweets.PublishTweetAsync(targetLine);

 このとき、TwitterClientクラスのコンストラクタの引数は最初の2つはアカウントAのものを使います。残りの2つは投稿したいアカウントのものを使います。アカウントBに投稿する場合は、開発者アカウントのアカウントAの情報とアカウントBの情報の双方が必要なので注意して下さい。(ここ重要!)

感想 §

 tw-oob-oauth.windows_amd64をダウンロードしてから拡張子を変えねばならないところと、TwitterClientクラスのコンストラクタの引数に別々のアカウントの情報が必要とされるのが罠でした。

参考 §

 実際に動いたコード(github)

参考 §

Facebook

キーワード【 川俣晶の縁側ソフトウェア技術雑記
【技術雑記】の次のコンテンツ
2022年
07月
31日
C#の【値を返さないコード パス】とは何かという問題
3days 184 count
total 1003 count
【技術雑記】の前のコンテンツ
2022年
07月
09日
Windows 11でMicrosoft Ichiroで音声合成させたいがAPIを読んでもできない
3days 88 count
total 2289 count

このコンテンツを書いた川俣 晶へメッセージを送る

[メッセージ送信フォームを利用する]

メッセージ送信フォームを利用することで、川俣 晶に対してメッセージを送ることができます。

この機能は、100%確実に川俣 晶へメッセージを伝達するものではなく、また、確実に川俣 晶よりの返事を得られるものではないことにご注意ください。

このコンテンツへトラックバックするためのURL

https://mag.autumn.org/tb.aspx/20220715203816
サイトの表紙【技術雑記】の表紙【技術雑記】のコンテンツ全リスト 【技術雑記】の入手全リスト 【技術雑記】のRSS1.0形式の情報このサイトの全キーワードリスト 印刷用ページ

管理者: 川俣 晶連絡先

Powered by MagSite2 Version 0.36 (Alpha-Test) Copyright (c) 2004-2021 Pie Dey.Co.,Ltd.