私はtwitter rails APIを使いこなしていて、ツイートの場所を知りません。これは常に失敗して何も返さないようです。私もtweet.coordinatesをやってみましたが、うまくいきません。twitterの場所を取得する
tweets = client.user_timeline("gems")
puts "size : #{tweets.size}"
tweets.each do |tweet|
if(tweet.place)
puts tweet.place.attributes
end
end
私は次のtwitter gemを使用しています。 https://github.com/sferik/twitter
EDIT:
tweets = client.search("a", geocode: "40.7128,-74.0059,50mi").take(100)
tweets.each do |tweet|
if tweet.place?
puts tweet.place.full_name
elsif tweet.geo?
puts "geofound"
elsif tweet.user.location?
puts tweet.user.location
end
だから私はジオコードを持っているツイートを探して上記のコードを試してみましたが、それらのどれもが、場所や地理フィールドを持っていないようだと、それは常にtweet.userを返します。非常に正確ではありません。出力にはニューヨークの多くがあるだけでなく、他の都市からの集まりもあるので、他の都市が存在しない/ニューヨークから遠く離れているときに、Twitterがこれらのクエリをどのように受け取ったかはわかりません。別の場所フィールドがありませんか?私はまた、出力の数がツイート配列のサイズと等しくないことに注意しました。
ユーザーplace?
またはgeo?
方法、twitter
宝石のドキュメントにすべきで述べたようにここでの出力例
を、あなたの出力は何ですか?サイズが正しく表示されていますか?ループ本体の最初の行に 'puts tweet.inspect'を入れて、ツイートがあるかどうかを調べることができます。 – mahemoff
サイズは20です。私はテキストを出力しようとしましたが、それらはすべて問題ありません。 –
つぶやきに実際に地理メタデータが含まれていますか?すべてのつぶやきがそうでない - 適切なアカウントを選択する必要があります。 Twitterの出力例でも、場所はnullです。https://dev.twitter.com/rest/reference/get/statuses/user_timeline – mahemoff