[PYTHON] Guru Navi API-Zugriffsmethode

Guru Navi API-Zugriffsmethode

① Greifen Sie auf die folgende URL zu und erstellen Sie ein Konto. https://api.gnavi.co.jp/api/

② Ein Schlüssel wird ausgegeben, kopieren Sie ihn also.

③ Greifen Sie auf die Restaurant-API zu. Beispiel: Ein Sushi-Restaurant mit der Adresse Ginza

https://api.gnavi.co.jp/RestSearchAPI/v3/?keyid=Schlüssel ausgestellt in ②&address=%E9%8A%80%E5%BA%A7&category_s=RSFST03001

④ Erklärung API für die Restaurantsuche: https://api.gnavi.co.jp/RestSearchAPI/v3/ keyid: Der in ② ausgegebene Schlüssel Adresse Adresse category_s: Restaurant-System (Sushi-Restaurant, Grillfleisch-Restaurant usw.)

⑤ Zugriff mit Python

access_gurunabi.py


#Modulimport
import json
import urllib.request
import ssl

#Geben Sie die Authentifizierungsmethode als TLSv1 an
context = ssl.SSLContext(ssl.PROTOCOL_TLSv1)

#Angabe des Werts des Parameters, der an die API übergeben werden soll
# https://api.gnavi.co.jp/api/manual/restsearch/
# https://api.gnavi.co.jp/api/tools/     #Sie können die API hier testen
base_url = "https://api.gnavi.co.jp/RestSearchAPI/v3/"

key =Schlüssel ausgestellt in ②

#####Geben Sie für den obigen Schlüssel die Schlüssel-ID an, die Sie beim Erstellen des GuruNavi-API-Kontos erhalten haben.
# shop_name = "Gegrilltes Fleisch" #Wenn Sie den Geschäftsnamen angeben möchten, kommentieren Sie
g_code = 'RSFST03001' #Sushi-Code
address = 'Ginza'
#Definieren von Funktionen, die die API verwenden
def gnavi_api(g_code,address):
    params = urllib.parse.urlencode({   
        'keyid': key,
        # 'name' : shop_name, #Wenn Sie den Geschäftsnamen angeben möchten, kommentieren Sie
        'category_s' : g_code,
        'address' : address
    })
    url = base_url + '?' + params
    print(url)
    response = urllib.request.urlopen(url,context=context)
    return response.read()

#Informationen mithilfe von Funktionen von der API abrufen
data = gnavi_api(g_code,address)

#Konvertieren Sie die erfassten Informationen aus dem JSON-Format in den Wörterbuchtyp
read_data = json.loads(data)["rest"]

#Erstellen Sie eine Liste zum Speichern einer Liste mit Geschäftsnamen
list_name = []

#Definieren einer Funktion, die nach Geschäft durchläuft und den Geschäftsnamen zur Liste hinzufügt
def get_name(read_data):
    for dic in read_data:
        list_name.append(dic.get("name")) 
        #list_name.append(dic.get("address")) #Klicken Sie hier, wenn Sie eine Adresse erhalten möchten
    return list_name

#Führen Sie die Funktion aus, um eine Liste der Geschäftsnamen abzurufen
get_name(read_data)

print(list_name)

Recommended Posts

Guru Navi API-Zugriffsmethode
Greifen Sie mit Python auf die Twitter-API zu
Google API-Zugriffstoken und Aktualisierungstoken
Greifen Sie mit Requests auf die Docker Remote API zu