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
で検索したら一致するツイートが返ってきたりします。 - ドキュメントに載ってませんよね?見つけたら教えて欲しいです。