もはやGoでやる理由がよく分かりませんが、やってしまったのでメモ。
追記:この記事を最初に書いたときは画像投稿がサポートされていませんでしたが、できるようになったので不要そうな部分を削りました。
GoでTwitterAPI使うならanaconda
とりいそぎ私はNICKI MINAJのお尻を想起しましたね。
golang twitter
でググったら
これが出てきました。
スターの数もそれなりにあるのでポピュラーっぽい。
なので、今回はこれを使います。
anacondaで画像付きツイートできるんです。
やり方
go get github.com/ChimeraCoder/anaconda
でインストール
awful.go
// あらかじめ画像をbase64エンコードしておき、base64Stringに格納しておく
// で、画像をアップロードする
// apiはanacondaから生成したTwitterAPI叩く用のクライアント(?)です
media, _ := api.UploadMedia(base64String)
// 画像のidを付加してツイートする
v := url.Values{}
v.Add("media_ids", media.MediaIDString)
tweet, _ := api.PostTweet("hello anaconda", v)
雑談
本家githubのExamplesに書いてることだけど、メモ
インストール
go get github.com/ChimeraCoder/anaconda
とりあえず文字だけのツイートしてみる
※Twitterアプリの作成やコンシューマキーやアクセストークンなどの準備は事前にしてある前提です。
まずはAPIを叩くためのクライアントのインスタンスを生成します。
githubのExampleにのってるヤツをパクっただけです。
初期化
anaconda.SetConsumerKey("your-consumer-key")
anaconda.SetConsumerSecret("your-consumer-secret")
api := anaconda.NewTwitterApi("your-access-token", "your-access-token-secret")
これでTwitterAPIが叩けるようになりました。
で、投稿は下記のとおり
ツイート
tweet, err := api.PostTweet("hello anaconda", nil)
これだけ笑
簡単ですねー
画像の投稿は冒頭に書いてるヤツでできるはず。