質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Unity3D

Unity3Dは、ゲームや対話式の3Dアプリケーション、トレーニングシュミレーション、そして医学的・建築学的な技術を可視化する、商業用の開発プラットフォームです。

Twitter

Twitterは、140文字以内の「ツイート」と呼ばれる短文を投稿できるサービスです。Twitter上のほぼ全ての機能に対応するAPIが存在し、その関連サービスが多く公開されています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

Q&A

解決済

1回答

239閲覧

Twitter APIの検索について

tensaikumabouzu

総合スコア45

Unity3D

Unity3Dは、ゲームや対話式の3Dアプリケーション、トレーニングシュミレーション、そして医学的・建築学的な技術を可視化する、商業用の開発プラットフォームです。

Twitter

Twitterは、140文字以内の「ツイート」と呼ばれる短文を投稿できるサービスです。Twitter上のほぼ全ての機能に対応するAPIが存在し、その関連サービスが多く公開されています。

Unity

Unityは、Unity Technologiesが開発・販売している、IDEを内蔵するゲームエンジンです。主にC#を用いたプログラミングでコンテンツの開発が可能です。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

0グッド

0クリップ

投稿2018/12/19 09:26

下の感じで検索用の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); } } }

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

include:retweetsは「検索対象にリツイートも含む」なので
「通常ツイート+リツイート」が検索候補になります。
(リツイートのみを対象とする検索コマンドは無いっぽい?)

TwiTimezのツイートは「原文+発言者の@名」の両方が含まれているので対象になるのでしょう。
qに「-【TwiTimez】」を追加して検索から除外するか、とりあえずそのまま検索しておいて後処理で「TwiTimezだったら除外」みたいなことをした方が早いと思います。

投稿2018/12/20 02:58

sakura_hana

総合スコア11425

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tensaikumabouzu

2019/01/07 10:21

結局Twitimezだけ除外して何とかなりました
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問