下の感じで検索用のAPIを書きました。
このサイトを参考に、あるツイート(結構リツイート数が多いツイート)を
リツイートした人たちの中から、一番フォロワーが多いユーザー1人を見つける
ことが出来るようにし、実際に検索した結果をjson形式で返してくれます。
その際に一番フォロワーが多いユーザーは、TwiTimezになることが多くて困っています。
ブラウザで公式Twitterを見てみると、@TwiTimezはそのツイートをリツイートしてないので、
parametersのqで"include:retweets"を含んでいるため、
本来だと検索結果に含まれないはずです。
qの書き方が間違っているのでしょうか。
よろしくお願いします。
private const string GetSearchURL = "https://api.twitter.com/1.1/search/tweets.json"; public static IEnumerator GetSearch(string Tweet_Word, string screen_name, string Tweet_ID, string consumerKey, string consumerSecret, AccessTokenResponse response, GetSearchCallback callback) { byte[] dummmy = null; string url = GetSearchURL; Dictionary<string, string> parameters = new Dictionary<string, string>(); parameters.Add("q", Tweet_Word + "include:retweets" + "@" + screen_name ); parameters.Add ("count", 100.ToString ()); parameters.Add("since_id", Tweet_ID); url = BuildURL (url, parameters); // HTTP headert Dictionary<string, string> headers2 = new Dictionary<string, string>(); headers2["Authorization"] = GetHeaderWithAccessToken("GET", url, consumerKey, consumerSecret, response, parameters); WWW web = new WWW(url, dummmy, headers2); yield return web; if (!string.IsNullOrEmpty(web.error)) { Debug.Log(string.Format("GetSearch - failed. {0}\n{1}", web.error, web.text)); callback(false, web.error); } else { string error = Regex.Match(web.text, @"<error>([^&]+)</error>").Groups[1].Value; if (!string.IsNullOrEmpty(error)) { Debug.Log(string.Format("GetSearch - failed. {0}", error)); callback(false, web.error); } else { callback(true, web.text); } } }
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/01/07 10:21