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"
    

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

    ということで以上です。

    広告ここから
    広告ここまで
    Home
    Search
    Bookmark