WebAPI

YOLP(地図)の使い方 Yahoo!ローカルサーチAPIを使ってみよう

この記事では商品の紹介にアフィリエイト広告を利用しています 「広告について」

ヤフーのWebAPI

Yahoo!デベロッパーズネットワークのWebAPI

地図、地域情報の検索に利用できるYOLP(地図)についてです

YOLP(地図)のYahoo!ローカルサーチAPIを使ってみました

取得方法やパラメータの内容などをまとめています

無料で利用できるAPIです

YOLP(地図)の使い方 Yahoo!ローカルサーチAPI

Yahoo!APIの使い方 Yahoo!デベロッパーネットワーク

Yahoo!のAPI、Yahoo!デベロッパーネットワークの利用を始めるには、アプリケーション登録など必要な手続きがあります

YOLP(地図)を使うなら、先に行わなければなりません

Yahoo!APIの使い方 YOLP(地図)のWebAPIを使ってみよう

Yahoo!デベロッパーネットワークのWebAPIにあるのがYOLP(地図)です

YOLP(地図)は、地図、地域情報の検索に利用できるAPIです

YOLPのAPI仕様は、URLやパラメータ一覧などこちらに公開されています

Yahoo!デベロッパーネットワーク YOLP(地図)

Yahoo! Open Local Platform(YOLP)は、Yahoo! JAPANがデベロッパー向けに提供する地図・地域情報のAPI・SDKです。ウェブページの制作はもちろん、スマートフォン向けアプリケーションの開発においても、多彩な地図表示、店舗・施設検索、ジオコーディング、ルート検索、標高データ取得などの豊富な機能をご活用いただけます。

こちらのサイトは、YOLPのYahoo!ローカルサーチAPIを使ってフリーワード検索した結果のレストラン・飲食店の詳細情報で作成したお試しサイトですので参考にしてください

お店・施設 スポット検索(自作サイトです)

YOLP(地図) Yahoo!ローカルサーチAPI

YOLP(地図)のAPIのなかでも、Yahoo!ローカルサーチAPIは、全国の店舗や施設、イベント、クチコミ情報などの地域・拠点情報(POI)を検索することができます

検索対象は、全国の店舗・施設の電話帳データ、店舗オーナーなどからの投稿データで、地域・拠点情報の名称や業種などをキーワードで検索できます

都道府県などの住所コードや業種で絞り込み検索することもできます

WebAPIを呼び出すときのリクエストパラメータや、WebAPIからのレスポンスパラメータの詳細はこちらのYahoo!ローカルサーチAPIのページに掲載されています

Yahoo!ローカルサーチAPI

YOLP(地図) Yahoo!ローカルサーチAPIの飲食店

Yahoo!ローカルサーチAPIを使ってみて感じた特徴です

取得できる飲食店の情報の件数はぐるなびAPIに比べると少ないようです

Yahoo!ローカルサーチAPIで取得できる飲食店はYahoo!ロコ(PayPayグルメ)で見ることができる店舗ではないかと思います

食べログやぐるなびのサイトでみてもわかりますが、登録されている飲食店の数が違うと思います

検索キーワードのヒットのアルゴリズムによっても件数が少なくでているのかもしれませんが、食べログやぐるなびはネット予約できない店舗や基本情報と口コミぐらいしかない店舗、ユーザーが登録した店舗でも登録されているのに比べると、登録件数が少ないのではないでしょうか?

Yahoo!ローカルサーチAPIで得られる情報は、店舗から提供されている写真なども入っていますから良さそうです

YOLP(地図)Yahoo!ローカルサーチAPIの施設検索

また、グルメ以外のジャンルもYahoo!ローカルサーチAPIでは指定可能で、ショッピング施設、レジャー施設、暮らしや生活に必要な施設の検索ができるところはぐるなびAPIにはない特徴です

電話帳に載るような施設は検索できるようです

Google Map APIも様々な施設の情報が検索できるWebAPIですが、有料のWebAPIなので若干使いにくいところがありました

Google Map APIは、キーワード検索が強力で、取得できる店舗の件数も多く、公園や観光スポットなど様々な情報を取得することができ、口コミも写真も取得できますからデータは充実しています

Yahoo!ローカルサーチAPIは無料ですし、ジャンル指定も地域指定も可能です

Yahoo!ローカルサーチAPIの使い方 API仕様

YOLPのページには、WebAPIの使い方や、サンプルコード、ライブラリ集などのドキュメントのページもありますから必要に応じて参照してみてください

Yahoo!ローカルサーチAPI 仕様

Yahoo!ローカルサーチAPIのリクエストURLはこちら

https://map.yahooapis.jp/search/local/V1/localSearch

単純にキーワード検索するだけなら、これでOKです

https://map.yahooapis.jp/search/local/V1/localSearch?appid=<あなたのアプリケーションID>&query=回転寿司

ブラウザにこのURLを貼り付けて表示させるとどのようなデータが取得できるかわかります

飲食店のデータは、ぐるなび提供だったり、Yahoo!ロコ提供だったりするようで、レスポンスパラメータはお店によって若干違っていたりしました

Yahoo!ローカルサーチAPI 主なリクエストパラメータ

Yahoo!ローカルサーチAPIの主なリクエストパラメータについてです

利用してみて、API仕様に書いていないけれども気づいた注意点も記載しておきます

&query=

キーワード検索のクエリーを設定するパラメータです

キーワードをUTF-8にエンコードして設定しますが、半角スペースを入れないようにしないとならないようです

キーワードをmb_convert_kana()を使って全角化してから使っています

&gid=

店舗固有のIDで指定するとこのIDの店舗の情報を取得します

ちょっと利用してみたところで気づいたのは、データにダブりがあって、同じIDのデータが複数とれることがあること

写真など情報が有るデータと無いデータなどありますから、同じ店に対して複数の提供元があるのかもしれません

&groupにgidを指定するとまとめて表示される、&distinctにfalseを指定するとすべての店舗が表示されると書いてありますから、必要に応じて使い分けるようです

また、クエリーやジャンルなども合わせて指定する場合は、この店舗が検索されないクエリーや店舗のジャンルと違うジャンルを指定するとデータが取得できませんでした

and条件になっているようですから注意が必要です

&sort=

ソート結果の並び順を指定できます

&start=

検索結果中の何番目からのデータを取得するのかを指定します

&results=

検索結果から何件データを取得するかを指定します

&detail=

出力項目を簡易版か標準版か詳細版かを切り替えることができます

レスポンスパラメータのDetailの部分は詳細版で取得できました

&output=

出力をJSONでとるか、XMLでとるかを指定できます

&lon= &lat= &dist=

検索する中心位置、検索範囲の中心からの距離を指定できます

&ac=

住所コードまたは国コードを指定します

住所コードはJISのX0401

国コードなら日本はJP、都道府県なら01から47の2桁、市町村を指定するなら5桁です

&gc=

検索できる店舗や施設の業種コードが指定できます

YOLP業種コードが用意されています

大きな分類はこちらの4つで、この2桁で指定することも可能です

01:グルメ、02:ショッピング、03:レジャー、04:暮らし・生活

細かい分類を指定する場合は、それぞれの大分類の中に4桁のコードで分類が規定されています

ジャンルを指定しないとすべてのジャンルから検索されているようでした

他のパラメータ

他にも矩形範囲指定やクーポン・駐車場・クレジットカード・禁煙分煙・予約などの対応有無の指定、画像有無の指定、開店日時指定などあります

Yahoo!ローカルサーチAPI 主なレスポンスパラメータ

Yahoo!ローカルサーチAPIの主なレスポンスパラメータについてです

レスポンスパラメータは、主なものはAPI仕様に記載されていますが、取得できるデータをみると記載されていないデータも多種ありました

データによって異なったり、ジャンルによって異なったりするようで、実際のレスポンスパラメータをみて、表示させたいものを使うといった使い方をしてみました

API仕様にきっちり記載されていなくて、データ提供元によって自由度があるのでしょうかね

ローカルサーチAPIのスキーマ記述(情報の構造)のページがありますから、みるとこのフィールドは1個だけとか、数の制限が規定されていないフィールドだとかわかります

ResultInfo
レスポンスのまとめの情報
 
 
ResultInfo->Status
リクエストの処理結果 正常終了は200
 
ResultInfo->Count
レスポンスに含まれるデータ件数
 
ResultInfo->Total
検索された結果の全件数
 
ResultInfo->Start
レスポンスに含まれるデータの開始位置
 
ResultInfo->Latency
レスポンス生成に要した時間
 
ResultInfo->Description
説明フィールドがありますが入っていないことが多いようです
 
ResultInfo->Copyright
コピーライトフィールドがありますがこちらも入っていないことが多いようです
 
Feature
検索結果1件ごとのデータ群です
API仕様に記載されているものが主な内容ですが、他にもあります
下記に記載していなものもあります
 
Feature->Gid
店舗に割り当てられたコードです
ID指定して検索する場合はこのコードを指定します
 
Feature->Name
店舗の名称
 
Feature->Description
店舗の説明用フィールドのようですがちょっと見た感じでは入っていないようでした
 
Feature->Categry 複数
ジャンルと同様の内容なので、ジャンルを使えばよさそうです
 
Feature->Geometry->Coodinates
店舗の位置情報です
経度緯度がカンマ区切りでまとめて入っています
 
Feature->Property->Address
店舗の住所です
住所を階層構造にしたデータも別に用意されていました
 
Feature->Property->Genre 複数
店舗、施設のジャンルです
ひとつの店舗に複数のジャンルが設定されるようになっています
 
Feature->Property->Station 複数
最寄り駅の路線名、駅名、出口、距離、徒歩何分、駅の位置
路線名は路線名というより、鉄道会社名のことが多いようです
複数の最寄り駅がある場合は複数設定されています
 
Feature->Property->Tel1
電話番号
 
Feature->Property->CatchCopy
お店の特徴をひところで表すキャッチコピーがはいっていてくれるとよいのですが、入ってなさそうです
 
Feature->Property->Price
Detailにランチやディナーの参考料金があります
こちらはフィールドだけかもしれないです
 
Feature->Property->AveragePriceComment
こちらもPrice同様
 
Feature->Property->LeadImage
お店の代表画像がある場合は設定されています
お店の外観や料理などの写真はDetailにもあります
 
Feature->Property->Coupon 複数
お店で使えるクーポン情報がある場合は設定されています
 
Feature->Property->Detail
このフィールドがお店の詳細情報です
ランチとディナーの参考価格、キャパシティ、画像情報や店舗からのメッセージ、店舗の対応状況のフラグ、人気の料理・アイテム、店舗サイトや予約サイトのURLなどが代表的なデータです
API仕様に記載されていなフィールドもいろいろあります
URLはぐるなび提供のデータならぐるなびのサイトが指定されているようです
Yahoo!ロコの店舗ページへのURLもこちらにあります
 
 

YOLP(地図) API Yahoo!ローカルサーチAPI 備忘録<未解決>

Yahoo!ローカルサーチAPIにfile_get_contents()でアクセスしてもファイル取得できなくなった?

今までは@file_get_contents()を使ってGETしていたのですが、いつからかファイルを取得できなくなっていました

URLをブラウザで直接みるとJSONファイルは出力されてきますが、PHPプログラム内からfile_get_contentsを使って取得しようとするとできません

JSONをXMLにしてもfile_get_contentsではできなくなっていました

XMLもURLをブラウザで直接見るとOKです

今まではfile_get_contentsでOKでしたが、できなくなってしまいました

いろいろ試してみたところfile_get_contents()は使わずに、outputはXMLにして、simplexml_load_file()を使ってみたところ、ファイルが取得できました

file_get_contnts()のcontentsパラメータの問題なのか?

Yahoo!の問い合わせでは技術的サポートはやっていないですし、まだよくわかりません

Yahoo!ローカルサーチAPI ヤフーAPIでプログラミング

Yahoo!ローカルサーチAPI WebAPIを使ってみよう

WordPressやPHPプログラミング

WebAPIの使い方、簡単なところから実際に使ってみて、作成してみて、イメージをつかみながらやってみましょう

WebAPIを使用したプログラミング例についてはこちらもご覧ください

簡単なプログラミング例を説明しています

オリジナルWEBサイト制作 PHP・Laravelを学ぼう

【PHP/Laravelコース】PHP/Laravelを学んでオリジナルWEBサイト制作

無料の説明動画配信無料プログラミング体験無料オンライン相談を実施しています

キャリアアップ・転職・副業・複業・兼業へのチャレンジを考えるなら無料キャリアカウンセリング副業コースもあります

【PHP/Laravelコース】
PHP/Laravelを学んでオリジナルサービス開発

無料体験 無料動画 無料相談
無料キャリア相談 副業チャレンジ