Die Technologie der Informationserfassung ist die Grundlage der Datenwissenschaft. Diese Studie.
Lassen Sie uns zunächst versuchen, Daten aus der API abzurufen, indem wir lernen, wie Daten für die Wissenschaft bereitgestellt werden.
Eine Konvention, die die Prozedur und das Datenformat zum Aufrufen und Verwenden der Funktionen eines bestimmten Computerprogramms (Software) und der von einem anderen externen Programm zu verwaltenden Daten definiert.
Wenn Sie jemanden mit Daten (z. B. Twitter) bitten, Ihnen Daten zu geben (z. B. Tweeten über Python), werden die Daten zurückgegeben, dies scheint jedoch eine Regel zu sein.
Ich werde jede API verwenden, also lassen Sie uns abrufen, welche Daten von wo stammen. Ich habe Hunger, also mag ich Reis. → Reis-Webservice ... → Aufschrei.
Die Dokumentation ist hier.
Die [API-Konsole] von Yelp (https://www.yelp.com.au/developers/api_console) ist praktisch, und Sie können sehen, wie sie funktioniert, ohne die Dokumentation zu genau zu betrachten. Lassen Sie uns vorerst ein Programm schreiben, das 10 Restaurants nach Ort und Stichwort druckt. Es scheint, dass die Parameter `term``` und`
location``` jeweils übereinstimmen. (Beim Betrachten des Dokuments)
~~ Es wird schwieriger, mit dem Erklären von ~~ fortzufahren, daher zeige ich Ihnen den folgenden Code.
Es war rauth, das für die Bearbeitung von OAuth-Anfragen praktisch zu sein schien, also habe ich es verwendet.
find_restaurant.py
import urllib2, sys
import rauth
import ConfigParser
inifile = ConfigParser.ConfigParser()
inifile.read("config/secrets.ini")
def search_params(term, location):
params = {}
params["term"] = term
params["location"] = location
params["limit"] = "10"
return params
def get_restaurants(params):
consumer_key = inifile.get("yelp", "consumer_key")
consumer_secret = inifile.get("yelp", "consumer_secret")
access_token = inifile.get("yelp", "access_token")
access_token_secret = inifile.get("yelp", "access_token_secret")
session = rauth.OAuth1Session(
consumer_key = consumer_key,
consumer_secret = consumer_secret,
access_token = access_token,
access_token_secret = access_token_secret)
request = session.get("http://api.yelp.com/v2/search", params=params)
data = request.json()
session.close()
return data
def main():
term = sys.argv[1]
location = sys.argv[2]
params = search_params(term, location)
response = get_restaurants(params)
restaurants_info = response["businesses"]
restaurant_names = []
for restaurant_info in restaurants_info:
restaurant_name = restaurant_info["name"]
print restaurant_name
if __name__ == "__main__":
main()
Wow, sehr einfach. (Ich kannte die Python-Grammatik überhaupt nicht, also vergaß ich zuerst `:`
.)
Ich habe gerade eine Methode zum Erstellen von Parametern und eine Methode zum Abrufen von Daten durch Drücken der API erstellt und diese verwendet. `" business "`
und `` `name``` sind die json-Schlüsselnamen der Antwort.
Speziell für mich, der neu in Python ist, die letzten beiden Zeilen,
if __name__ == "__main__":
main()
Überprüfen Sie dies heraus. (Warum __name __ == "main") Ich habe auch configparser überprüft. (Dies oder etwas)
Nun, die Geschichte war aus, aber ich kehrte zum Hauptthema zurück und der Code wurde vervollständigt, also auf der Konsole,
python find_restaurant.py food tokyo
damit
Yamato Sushi
Numazu Port Shinjuku West Ausfahrt
Tonki
Full Monty
Maruyama Kaffee Nishi Azabu
AW Elements Roppongi Hills Geschäft
Harajuku Gyozaro
The chef's table
Ichiran
Kam heraus. Umm. Informationsbeschaffung von API abgeschlossen! Nein. (Klicken Sie hier)
Nun, das allein ist ziemlich normal und zu einfach. Selbst wenn Sie sich das Ergebnis ansehen, geht es nur um "Oh, ich habe es eilig!" .. Also werde ich es ein bisschen mehr drehen. → Fortsetzung vom nächsten Mal. Ich werde den Link beim Aktualisieren einfügen.
Recommended Posts