La technologie d'acquisition de l'information est à la base de la science des données. Cette étude.
Tout d'abord, essayons d'apporter des données à partir d'API en apprenant à apporter des données pour la science.
Une convention qui définit la procédure et le format des données pour appeler et utiliser les fonctions d'un certain programme informatique (logiciel) et les données à gérer à partir d'un autre programme externe.
Si vous demandez à quelqu'un qui a des données (comme Twitter) de vous donner des données (comme un tweet sur python), il vous renverra les données, mais cela semble être une règle pour cela.
Je vais utiliser n'importe quelle API, alors obtenons quelles données d'où. J'ai faim, alors j'aime le riz. → Service web de riz ... → jappement.
La documentation est ici.
La [API Console] de Yelp (https://www.yelp.com.au/developers/api_console) est pratique et vous pouvez voir comment cela fonctionne sans trop consulter la documentation. Pour le moment, écrivons un programme qui imprimera 10 restaurants par emplacement et mot-clé. Il semble que les paramètres terme '' et
emplacement '' correspondent à chacun. (En regardant le document)
~~ Il devient difficile de continuer tout en expliquant ~~, donc je vais vous montrer le code ci-dessous.
C'était rauth qui semblait être pratique pour gérer les requêtes OAuth, alors je l'ai utilisé.
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, très simple. (Je ne connaissais pas du tout la grammaire python, alors j'ai oublié :
au début.)
Je viens de créer une méthode pour créer des paramètres et une méthode pour obtenir des données en appuyant sur l'API, et je les ai utilisées.
business '' et
`` name``` sont respectivement les noms de clé json de la réponse.
Surtout pour moi qui suis novice en python, les deux dernières lignes,
if __name__ == "__main__":
main()
Regarde ça. (Pourquoi __name __ == "main") J'ai également vérifié le configparser. (Ceci ou quelque chose)
Eh bien, l'histoire était fausse, mais je suis revenu au sujet principal et le code était terminé, donc sur la console
python find_restaurant.py food tokyo
alors
Sushi Yamato
Sortie ouest du port de Numazu à Shinjuku
Tonki
Full Monty
Café Maruyama Nishi Azabu
Magasin AW Elements Roppongi Hills
Harajuku Gyozaro
The chef's table
Ichiran
Sortit de. Umm. Acquisition des informations de l'API terminée! (Cliquez ici)
Eh bien, cela seul est plutôt normal et c'est trop facile. Même si vous regardez le résultat, il ne s'agit que de "Oh, je suis pressé!" .. Je vais donc le tordre un peu plus. → Suite à partir de la prochaine fois, je vais coller le lien lors de la mise à jour.
Recommended Posts