Safariの検索エンジンのURL一覧と仕様の調査
Safariの検索エンジンは通常、Google, Yahoo, Bing, DuckDuckGo, Ecosiaから選択することしかできませんが、デバイスの地域設定や言語設定によって、検索エンジンの選択肢が増えたりURLが変化したりします。
CSEというSafari拡張機能を開発するにあたってこの仕様について調査していたので、需要は低いと思いますがせっかくなので記事にまとめておこうと思います。
調査するバージョンとパターン、方法
iOS 26, iPadOS 26, macOS 26上のSafariでテストします。
まずiOSで地域と言語をそれぞれ以下のように設定した場合でテストします(これら以外でも部分的にテストすることがあります)。
- アメリカ/英語
- ロシア/ロシア語
- 中国本土/簡体中国語
- 香港/繁体中国語(香港)
- 台湾/繁体中国語(台湾)
- 日本/日本語
これらの設定と検索エンジンの組み合わせのうち、変化の見られたものでiPadOSとmacOSでもテストします。
調査の方法としては、設定のパターンごとにtestと検索してSafariのWeb InspectorのNetworkを監視し、最初に送られたGETリクエストのURLを検索エンジンのURLとします。ただしクエリ部分(test)は%sと表記します。
特に断りがない場合は「アメリカ/英語」に設定した状態のURLを記録します。特徴的な変化が見られた設定のパターンは「例外」として書きます。
簡体中国語では「谷歌」という名前になります。
| OS | URL |
|---|---|
| iOS/iPadOS | https://www.google.com/search?q=%s&ie=UTF-8&oe=UTF-8&hl=en-us&client=safari |
| macOS | https://www.google.com/search?client=safari&rls=en&q=%s&ie=UTF-8&oe=UTF-8 |
地域と第一言語に応じてhlの値が変わります。macOSのrlsの変化は確認できませんでした。
以前は.comではなく、地域設定に応じたccTLD(カナダなら.caなど)が使用されていましたが、iOS 17以降では以下の例外を除いてwww.google.comに統一されています。
例外: 地域設定が中国本土
以下はiOSの場合です。
https://www.google.cn/search?q=%s&ie=UTF-8&oe=UTF-8&hl=zh-hans-cn&client=safari
ちなみに検索機能はなく、google.com.hkへの案内があるだけです。
Yahoo
簡体中国語では「雅虎」という名前になります。
| OS | URL |
|---|---|
| iOS | https://search.yahoo.com/search?p=%s&fr=iphone&.tsrc=apple |
| iPadOS | https://search.yahoo.com/search?p=%s&fr=ipad |
| macOS | https://search.yahoo.com/search?ei=utf-8&fr=aaplw&p=%s |
例外1: 地域設定が日本で、第一言語が日本語
Yahoo! JAPANの検索エンジンに変わります。
| OS | URL |
|---|---|
| iOS | https://search.yahoo.co.jp/search?p=%s&ei=UTF-8&fr=applep1 |
| iPadOS | https://search.yahoo.co.jp/search?p=%s&ei=UTF-8&fr=applpd |
| macOS | https://search.yahoo.co.jp/search?p=%s&ei=UTF-8&fr=appsfch2 |
例外2: 地域設定がアメリカではなく、例外1にも当てはまらない
全ての地域で調査したわけではないので確証はありませんが、サブドメインに国名コードが追加されるようです。
イギリス設定のiOSの場合: https://uk.search.yahoo.com/search?p=%s&fr=iphone&.tsrc=apple
なおmacOSはこの現象は見られず、search.yahoo.comで検索されるようでした。
Bing
簡体中国語では「必应」という名前になります。
| OS | URL |
|---|---|
| iOS | https://www.bing.com/search?q=%s&form=APIPH1&PC=APPL |
| iPadOS | https://www.bing.com/search?q=%s&form=APIPA1&PC=APPD |
| macOS | https://www.bing.com/search?q=%s&form=APMCS1&PC=APMC |
DuckDuckGo
| OS | URL |
|---|---|
| iOS | https://duckduckgo.com/?q=%s&t=iphone |
| iPadOS | https://duckduckgo.com/?q=%s&t=ipad |
| macOS | https://duckduckgo.com/?q=%s&t=osx |
Ecosia
| OS | URL |
|---|---|
| iOS | https://www.ecosia.org/search?q=%s&tts=st_asaf_iphone |
| iPadOS | https://www.ecosia.org/search?q=%s&tts=st_asaf_ipad |
| macOS | https://www.ecosia.org/search?q=%s&tts=st_asaf_macos |
百度
中国語でない場合は「Baidu」ですが、日本語では「バイドゥ」です。
地域設定が中国本土か、言語設定に中国語が含まれている場合に選択肢に現れます。(macOSでは地域設定のみ参照)
以下は地域が中国本土で、言語が簡体中国語の場合です。
| OS | URL |
|---|---|
| iOS | https://m.baidu.com/s?from=1000539d&word=%s |
| iPadOS | https://www.baidu.com/s?ie=utf-8&wd=%s&tn=84053098_4_dg |
| macOS | https://www.baidu.com/s?wd=%s&tn=84053098_dg&ie=utf-8 |
例外: 中国本土以外の場合
fromやtnの値が変わります。
| OS | URL |
|---|---|
| iOS | https://m.baidu.com/s?from=1099b&word=%s |
| iPadOS | https://www.baidu.com/s?ie=utf-8&wd=%s&tn=84053098_1_dg |
搜狗
中国語でない場合は「Sogou」ですが、日本語では「捜狗」です。
地域設定が中国本土か、言語設定に中国語が含まれている場合に選択肢に現れます。(macOSでは地域設定のみ参照)
以下は地域が中国本土で、言語が簡体中国語の場合です。
| OS | URL |
|---|---|
| iOS | https://m.sogou.com/web/sl?keyword=%s&v=5 |
| iPadOS/macOS | https://www.sogou.com/web?query=%s&ie=utf8 |
360搜索
中国語でない場合は「360 Search」です。
地域設定が中国本土か、言語設定に中国語が含まれている場合に選択肢に現れます。(macOSでは地域設定のみ参照)
以下は地域が中国本土で、言語が簡体中国語の場合です。
| OS | URL |
|---|---|
| iOS | https://m.so.com/s?q=%s&src=home&srcg=safariwap_1 |
| iPadOS | https://m.so.com/s?q=%s&src=home&srcg=safariwap_1 |
| macOS | https://www.so.com/s?q=%s&src=pclm&ls=safarimac |
Яндекс
キリル文字を使う言語でない場合は「Yandex」です。(多分)
地域設定がロシア/トルコ/カザフスタン/ベラルーシ/ウクライナのいずれか(多分)か、言語設定にロシア語が含まれている場合に選択肢に現れます。(macOSでは地域設定のみ参照)
以下は地域がロシアで、言語がロシア語の場合です。
| OS | URL |
|---|---|
| iOS | https://yandex.ru/search/touch/?clid=1906591&text=%s |
| iPadOS | https://yandex.ru/search/pad/?clid=1906723&text=%s |
| macOS | https://yandex.ru/search?clid=1906725&text=%s |
例外: ロシア以外の地域
iOSで一部のみ確認したところ以下のようになっていました。
| 地域 | URL |
|---|---|
| アメリカ | https://yandex.com/search/touch/?clid=1906591&text=%s |
| トルコ | https://yandex.com.tr/search/touch/?clid=1906591&text=%s |
| カザフスタン | https://yandex.kz/search/touch/?clid=1906591&text=%s |
| ベラルーシ | https://yandex.by/search/touch/?clid=1906591&text=%s |
| ウクライナ | https://yandex.ua/search/touch/?clid=1906591&text=%s |
旧ソ連の国は一通り試しましたが、トルコのような場合もあるので他にもYandexが対応する地域があるかもしれません。
おそらくTLDが変化するだけです。また一部はyandex.ruへリダイレクトします。
ちなみに随筆時点でyandex.uaはclientHoldになっており、アクセスできない状態になっています。
調査結果は以上になります。もし新たな仕様が見つかったらこの記事も更新しようと思います。
記事にない仕様を見つけたら知らせていただけると嬉しいです。
Discussion