在看机器学习实战中K-means一章,练习中需要调用Yahoo PlaceFinder API 为地点添加经纬度,语言是python。申请到了appid但调用好像还要收费,要填写银行卡号才能用,没管那么多直接用了。而且网上关于这个API调用的参考文章很少。鼓捣半天用JSON加载API URL进行调用,但结果显示ValueError: No JSON object could be decoded。

放弃之,听同学说Google API好用就开始试试,发现网上关于google API的文章一搜一把。但还是官网文档看起来靠谱。

1、在Google API console申请API keyhttps://code.google.com/apis/console/?noredirect,步骤可参考这篇Places API introduction https://developers.google.com/places/documentation/

2、因为主要用经纬度的API,申请了 Geocoding API,参考文档https://developers.google.com/maps/documentation/geocoding/?csw=1#Geocoding。在看了Geocoding API Request Format,JSON Output Formats后对这个API的请求和返回形式大概了解了。然后自己改代码调用,遇到下面几个问题:

2.1 还是一直出现ValueError: No JSON object could be decoded,说明JSON没有加载到东西。不知道是API的问题还是JSON用法的问题。直接在网址框里输入参考文档里的JSON request地址 https://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&sensor=true_or_false&key=API_KEY,换上自己的API Key,sensor改为false。弹出个json.json文件,保存下来用Notepad打开来看,和JSON Output Formats一样一样的。确定按这么去拼接API request可行。

2.2 检查自己的地址,少了/api/,添上。JSON加载上了数据,但是返回的是{u'status': u'REQUEST_DENIED', u'error_message': u'Requests to this API must be over SSL.', u'results': []}。文档虽然这种status情况是sensor没赋值,我sensor赋了false。继续比较我的URL和参考文档的URL,此时就有一处不同,就是人家是https而我是http,改了,就好了。

事实证明了文档强大的重要性。

最新文章

  1. merge into在oracle10g和oracle 11g中的使用差别一
  2. sharebutton
  3. LightOJ 1313 - Protect the Mines(凸包)
  4. jquery中获取当前点击对象
  5. maven 名词
  6. python socket+tcp三次握手四次撒手学习+wireshark抓包
  7. Java StringBuilder 和 StringBuffer 源码分析
  8. 理解Device Tree Usage
  9. ideaJ+maven+javaweb实践: sevlet实现upload&download,javaIO代码
  10. day03运算符 逻辑运算符
  11. web.xml hello1代码分析
  12. luogu4389 付公主的背包
  13. windows 下安装 redis
  14. 电商类Web原型制作分享——聚美优品
  15. python - http请求带Authorization
  16. 润乾报表在proxool应用下的数据源配置
  17. PHP代码审计 -1.SQL注入总结
  18. nginx 反向代理https
  19. command not found: django-admin.py
  20. 记开发个人图书收藏清单小程序开发(四)DB设计

热门文章

  1. 关于一个新的DOM选择器querySelector
  2. noi 9265 取数游戏
  3. iotop命令
  4. js的一些复习
  5. <转>修改TM2013聊天记录保存目录final版
  6. PHP匿名函数的使用
  7. shell学习笔记1
  8. [linux] Upgrading glibc for the GHOST Vulnerability
  9. java高薪之路__005_IO流
  10. 协同过滤 CF & ALS 及在Spark上的实现