morito

個人的に勉強したことのメモを投稿していく技術ブログ。最近はWebアプリ開発と量子コンピュータの勉強をしてます。

anacondaで取得したTweetが途中で切れる

環境

  • Docker Version 20.10.2
  • docker-compose version 1.27.4, build 40524192
  • go version go1.14 linux/amd64

anacondaを使ってTwitterのいいね欄を取得したかったのですが

取ってきたツイーヒョがなぜか途中で切れてしまうので困った
コードは以下。認証のとことmain関数は省略してます。

package main

import (
    "fmt"
    "local.packages/keys"
    "net/url"
    // "unicode/utf8"
)

func getFavotite() {
    api := keys.GetTwitterApi()

    v := url.Values{}
    v.Set("count","2")

    tweets, err := api.GetFavorites(v)
    if err != nil {
        panic(err)
    }

    for _, tweet := range tweets {
        fmt.Println(tweet.Text,"\n")
    }
 
    fmt.Println("get favorites!")
}

とってきてShellに表示したツイート↓

# go run *.go
大嶋啓之『epitaph』 / cross fade https://t.co/i0R9osUU1B
ボーカルRec&Mix&Masteringやらせていただきました。大嶋さんの12年ぶりの新作フルアルバ?

元のツイートはこれなので半分くらいしか表示できない

大嶋啓之『epitaph』 / cross fade youtu.be/Duh6ZP-kNe8 ボーカルRec&Mix&Masteringやらせていただきました。大嶋さんの12年ぶりの新作フルアルバム! kidlitさんVo&Choとの相性も抜群で、退廃的なロマンに満ちあふれています。浄化感もあってどっぷり浸れる作品。是非聴いてみてください!

原因と解決法

レスポンスであるtype TweetのフィールドにはFullTextなるものがあるらしい

tweet.textは省略されたものらしい OMG

なので

- fmt.Println(tweet.Text,"\n")
+ fmt.Println(tweet.FullText,"\n")

こんなことに無駄に時間食ってしまった。ちゃんとドキュメントは読もう;;

参考

anaconda docs