14.5 API实战:在西雅图寻找古巴食品

本节使用Yelp Fusion API[1]回答问题:

“西雅图最受欢迎的古巴食品在哪里?”

考虑到这个问题的地理性质,本节构建了西雅图最受欢迎的古巴餐馆的地图,如图14-12所示。此分析的完整代码也可从本书的在线代码库[2]获得。

要向Yelp Fusion API发送请求,需要获取API密钥。这可以通过在API的网站上注册账户,然后注册一个应用程序来获取(API通常要求注册才能进行访问)。如前所述,应该将API密钥存储在单独的文件中,以便对其保密。

Yelp Fusion API要求使用另一种语法来指定HTTP请求中的API密钥,即需要为向API发出的请求添加一个头,而不是将密钥作为查询参数传递。HTTP头向服务器提供有关发送请求者的附加信息,这就像请求信封上的附加信息一样。具体来说,HTTP请求需要包含一个“授权(Authorization)”头,其中包含API密钥(采用API期望的格式),以便接受请求。

此代码调用GET()请求中的add_headers()方法。add_headers()添加的头将授权头的值设为“bearer ...

Get 数据科学之编程技术:使用R进行数据清理、分析与可视化 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.