与太話

curlとjqでホットペッパーAPIからいろいろ情報を取り出してみる

ホットペッパー | APIリファレンス | リクルートWEBサービスからcurlとjqでいろいろ情報を検索してみます。 エリアコードを取得する 大エリア・中エリア・小エリアとあるみたいですが、とりあえず試すだけなので大エ […]

広告ここから
広告ここまで

ホットペッパー | APIリファレンス | リクルートWEBサービスからcurlとjqでいろいろ情報を検索してみます。

エリアコードを取得する

大エリア・中エリア・小エリアとあるみたいですが、とりあえず試すだけなので大エリアで広くいってみましょう。
リクエストは以下のような形になります。

$ https://webservice.recruit.co.jp/hotpepper/large_area/v1/?key=YOUR_API_KEY&format=json

レスポンスはこんな感じ。

{
  "results": {
    "api_version": "1.20",
    "results_returned": "47",
    "results_start": 1,
    "results_available": 47,
    "large_area": [
      {
        "service_area": {
          "name": "東京",
          "code": "SA11"
        },
        "name": "東京",
        "large_service_area": {
          "name": "関東",
          "code": "SS10"
        },
        "code": "Z011"
      },
      {

都道府県名にマッチするキーをとりたい場合は、jqで以下のようにするとOK。

$ https://webservice.recruit.co.jp/hotpepper/large_area/v1/?key=YOUR_API_KEY&format=json | jq ".results.large_area[] | select(.service_area.name == \"京都\")"
{
  "service_area": {
    "name": "京都",
    "code": "SA22"
  },
  "name": "京都",
  "large_service_area": {
    "name": "関西",
    "code": "SS20"
  },
  "code": "Z022"
}

で、めんどくさいのでコマンド化したのが以下。

https://gist.github.com/hideokamoto/fd4c3aa0cb1955082b54496bc0dde74f


都道府県名とキーワードでお店を探す

「グルメサーチAPI」でお店を探せます。
エリアとキーワードで検索する場合は以下のようなリクエストになります。

curl "https://webservice.recruit.co.jp/hotpepper/gourmet/v1/?key=${APIKEY}&keyword=${KEYWORD}&service_area=${SERVICE_AREA_CODE}&format=json"

都道府県名そのままいれても検索されませんのでご注意ください。
service_areaには先程のサンプルなどで取得したエリアコードを入れるとよいでしょう。

でスクリプト化したのが以下。
https://gist.github.com/hideokamoto/61a8b57a266d276a9ed447f2480a7b90

/bin/bash search_restaurant_by_hotpepper.sh {YOUR_API_KEY} 京都 日本酒 | jq ".results.shop[] | .name"
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  6489    0  6489    0     0  24461      0 --:--:-- --:--:-- --:--:-- 24486
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 38679    0 38679    0     0  92696      0 --:--:-- --:--:-- --:--:-- 92533
"みとき MITOKI"
"隠れ家日本酒バル あかまる 離れ"
"まんざら 河原町 本店"
"肉処 圭助"
"桜肉料理 祇園 馬春楼"
"酒蔵家 錦店"
"いも松 七条新町"
"川の流れる忍庵"
"臼松 木屋町店"
"まんざら亭 NISHIKI"

「だからなんだ」という気もしないでもないですが、応用していけばコマンドラインからお店探しできそうですね。

ということで以上です。

ブックマークや限定記事(予定)など

WP Kyotoサポーター募集中

WordPressやフロントエンドアプリのホスティング、Algolia・AWSなどのサービス利用料を支援する「WP Kyotoサポーター」を募集しています。
月額または年額の有料プランを契約すると、ブックマーク機能などのサポーター限定機能がご利用いただけます。

14日間のトライアルも用意しておりますので、「このサイトよく見るな」という方はぜひご検討ください。

広告ここから
広告ここまで

Related Category posts