24
22

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

情弱だがGoで画像付きツイートしたい

Last updated at Posted at 2015-02-15

もはや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)

これだけ笑
簡単ですねー

画像の投稿は冒頭に書いてるヤツでできるはず。

勉強になった。シェアさせてください!

24
22
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
24
22

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?