>>> from env_helper import info; info()
页面更新时间: 2020-07-05 07:33:39
操作系统/OS: Linux-4.19.0-9-amd64-x86_64-with-debian-10.4 ;Python: 3.7.3

4.3. JSON 和 API

JavaScript 对象表示法是一种流行的方式,将数据格式化, 成为人可读的字符串。 JSONJavaScript 程序编 写数据结构的原生方式,通常类似于 Pythonpprint() 函数产生的结果。不需要了解 JavaScript, 也能处理 JSON 格式的数据。

下面是 JSON 格式数据的一个例子:

{"name": "Zophie", "isCat": True,
"miceCaught": 0, "napsTaken": 37.5,
"felinelQ":'null'}

了解 JSON 是很有用,因为很多网站都提供 JSON 格式 的内容,作为程序与网站交互的方式。这就是所谓的提供 “应用程序编程接口( API)”。访问 API 和通过 URL 访问任何其他网页是一样的。不同的是, API 返回的数据是针对机器格式化的(例如用JSON), API 不是人容易阅读的。

许多网站用 JSON 格式提供数据。Facebook、Twitter、Yahoo、Google、Tumblr、 Wikipedia、Flickr、Data.gov、Reddit、IMDb、 Rotten Tomatoes、Linkedln和许多其他流行的网站,都提供 API 让程序使用。有些网站需要注册,这几乎都是免费的。 你必须找到文档,了解程序需要请求什么 URL 才能获 得想要的数据,以及返回的 JSON 数据结构的一般格式。 这些文档应在提供 API 的网站上提供,如果它们有“开 发者”页面,就去那里找找。

利用 API ,可以编程完成下列任务:

  • 从网站抓取原始数据(访问 API 通常比下载网页 并用 Beautifol Soup 解析HTML更方便)。

  • 自动从一个社交网络账户下载新的帖子,并发布到 另一个账户。例如,可以把 tumblr 的帖子 上传至 Facebook

  • 从 IMDb、Rotten Tomatoes和维基百科提取数据, 放到计算机的一个文本文件中,为你个人的电影收藏 创建一个“电影百科全书”。

可以在http://nostarch.com/automatestuff/ 看到JSON API 的一些例子。