TwitterAPI1.1のsearch/tweets(以下、検索API)でURLを検索する場合の仕様です。
前提知識
URLを含む文字列をツイートした場合は、全てのURLは http://t.co/* に変換されます。
そしてそのツイートはentitiesに
| Key | 意味 | 例 |
|---|---|---|
| url | Twitterの短縮URL | http://t.co/* |
| dispaly_url | 元のURLの短い表記 | amzn.to/* |
| expanded_url | 元のURL | http://www.amazon.co.jp/* |
という情報を持ちます。
URLを検索
下記を例に検索してみます。
| Key | 意味 | 例 |
|---|---|---|
| url | Twitterの短縮URL | http://t.co/VWXYZ |
| dispaly_url | 元のURLの短い表記 | amzn.to/abced |
| expanded_url | 元のURL | http://www.amazon.co.jp/abcde |
| 検索クエリ | 一致 |
|---|---|
| t.co | × |
| amzn.to | × |
| amazon.co.jp | ◯ |
| jp/abcde | ◯ |
expanded_url(t.coのリダイレクト先のURL)が検索対象となっています。
次に、投稿の段階で既に他サービス(bit.ly)で短縮してあるURLです。
| Key | 意味 | 例 (bit.lyのURL) |
|---|---|---|
| url | Twitterの短縮URL | http://t.co/VWXYZ |
| dispaly_url | 元のURLの短い表記 | bit.ly/abcde |
| expanded_url | 元のURL | http://bit.ly/abcde |
| - | bit.lyのリダイレクト先のURL | http://google.com/ |
| 検索クエリ | 一致 |
|---|---|
| t.co | × |
| bit.ly | × |
| http://bit | × |
| bit.ly/abcde | × |
| google.com | ◯ |
| http://goo | ◯ |
expanded_urlでなくbit.lyのリダイレクト先のURLが検索対象となっています。
まとめ
- TwitterAPI1.1のsearch/tweetsでは短縮URLは検索対象でなく、リダイレクト先のURLが検索対象になっている。
- 投稿時のURLがbit.lyなどの短縮URLであってもbit.lyのリダイレクト先のURLが検索対象になっている。
※ t.coは、除外されているかなと予想はしていましたが、bit.lyまで展開されているのには驚きました。
- 特定のブログ記事の反応など、このURLはTwitterでどれくらいつぶやかれているのだろうと検索するときは、単純にオリジナルの長いURLで検索すれば全ての一致を取得出来るとういことですね。
注釈
- TwitterAPI1.0では検証してませんが、ここの仕様は同じかなと予想。
- 更に(3つ以上)短縮URLを介しているものは試してません…
-
Webでの検索は仕様が少し違いました。リダイレクト先のURLが検索対象で一致するのは同じなのですが、
t.coで検索したら一致するツイートが返ってきたりします。 - ドキュメントに載ってませんよね?見つけたら教えて欲しいです。