Twitter developer appsとGolangでプログラムからツイートしてみる

2月 12, 2022

どもども。最近やけに雪が降りますね。雪に馴染みのない筆者はここのところテンション高めです。


さて、本日はTwitterにて任意の内容をツイートするコードをGolangで実装してみたので記事にしてみました。


こちらのコードを定期実行するとTwitter Botになったりもします。


早速参りましょう。

Twitter developer appsへの登録

まずは今回使用するTwitterアカウントを新規作成し、下記URLよりTwitter developer appsへの登録を済ませましょう。
https://apps.twitter.com/

各工程は以下を参照ください。
・Twitter公式より
Twitterアカウントを新規作成
Twitter developer appsへの登録方法は下記記事がわかりやすく纏まっているので参照ください。
2021年度版 Twitter API利用申請の例文からAPIキーの取得まで詳しく解説

登録後、実際にツイートをするには下記キーが必要となりますので取得しておいてください。
・API Key
・API Secret
・Access Token
・Access Token Secret

準備が完了しましたら、ツイートを行うコードを書いていきましょう。

ツイートを行うコードを実装

それでは実際にツイートを行うコードを書いていきます。


今回は実際にプログラムからツイートができることを確認できる最低限のコードとなっています。今回は実際にTweetを行うメソッドを使用するためにanacondaパッケージを利用します。

package main

import(
	"fmt"
	"github.com/ChimeraCoder/anaconda"
)

func GetTwitterApi() *anaconda.TwitterApi {
    anaconda.SetConsumerKey("API Key")
    anaconda.SetConsumerSecret("API Secret")
    api := anaconda.NewTwitterApi("Access Token", "Access Token Secret")
    return api
}

func main(){
    api := GetTwitterApi()
    text := "Test Tweet"

    tweet, err := api.PostTweet(text, nil)
    if err != nil {
        panic(err)
        }
    fmt.Print(tweet.Text)
}

実行すると、実際に作成したTwitterアカウントにて

text := "Test Tweet"

で指定した文字列がツイートされていることが確認できます!好きな文字列に入れ替えて試してみてください!

まとめ

今回はTwitter developer appsとGolangでプログラムからツイートすることに成功しました。


個人的にはこのコードに少し手を加えて、LambdaとCloudWatchEventでBotとして運用していくつもりです。


Twitter Botを作成するサービスもありますが、カスタマイズ性も高いので僕は自分で実装してしまうことをお勧めしたいですね!


最後まで読んでいただきありがとうございました!


↓オススメ教材

Golang

Posted by CY