这几天因为其他事务,打断了自己的学习计划,今天继续我的翻译,避免又中途而废. 注:文章原文为Dr. Charles Severance 的 <Python for Informatics>.文中代码用3.4版改写,并在本机测试通过. 13.7 谷歌的 geocoding 网页服务 谷歌公司有一个非常优秀的网页服务叫做geocoding.这个服务允许我们使用他们庞大的地理信息数据库.当我们向geocoding API提交一个"Ann Arbor, MI"的地理位置查找字符串后…
注:文章原文为Dr. Charles Severance 的 <Python for Informatics>.文中代码用3.4版改写,并在本机测试通过. 13.6 应用程序接口API 现在我们拥有了用HTTP协议在应用程序间互换数据的能力.并且有了用XML或JSON,在应用程序间互发复杂数据的方法. 下一步是用这些技术来定义和记录程序间的协议.程序间的协议通用名是应用程序接口APIs.当我们使用一个API时,通常一个程序先生成可供其它程序使用的服务集,并且发布它的APIs,即访问程序提供的服…
注:文章原文为Dr. Charles Severance 的 <Python for Informatics>.文中代码用3.4版改写,并在本机测试通过. 13.4 JavaScript Object Notation-JSON JSON的格式灵感来自JavaScript语言中的对象和数组格式.因为Python语言的发明比JavaScript要早,所以Python关于词典和列表的语法影响了JSON的语法,故而JSON和Python的词典和列表的结合体几乎完全相同. 以下是JSON的一个编码,它…
注:文章原文为Dr. Charles Severance 的 <Python for Informatics>.文中代码用3.4版改写,并在本机测试通过. 一旦利用程序通过HTTP协议获得并分析文档变得简单,那么开发生成一个特殊设计的.供其他程序使用的文档(不是在浏览器中显示HTML)的方法也不用花太长时间. 我们使用的通过网页互换数据的通用格式有这么两种:扩展标记语言XML和JSON(见 www.json.org).XML已经应用多年,最适合互换文档样式数据.当程序之间只想互换字典.列表或者…
注:文章原文为Dr. Charles Severance 的 <Python for Informatics>.文中代码用3.4版改写,并在本机测试通过. 12.7 用BeautifulSoup分析HTML 有很多Python库可以帮你分析HTML和抓取数据.每个库都有它们各自的强项和弱点,你可以基于你的需求选择一个. 下面的例子,我们将使用BeautifulSoup来分析一些HTML的输入,并抓取链接信息.你可以从www.crummy.com下载和安装BeautifulSoup代码.你可以在…
第1-3章 这个文档是记录我学习python时一些学习笔记以及一些想法也可以称作复习笔记 第一章:起步这一章主要是从第一个"hello world"程序到python环境的搭建与配置,因为我在Mac上用的一个叫Jupiter Notebook的网页端界面,所以就省去了这个步骤,直接进行后面的练习了,当然后面到小项目的时候也许还是需要熟练的在Windows.MacOS.Linux三个不同环境下搭建环境的. 第二章:变量和简单数据类型这一章主要涵盖了:变量.字符串.数字.注释.python…
注:文章原文为Dr. Charles Severance 的 <Python for Informatics>.文中代码用3.4版改写,并在本机测试通过. 12.9 词汇表 BeautifulSoup: 一个用于分析HTML文档,并从中抓取数据的Python库.它弥补了大部分在浏览器中被忽略的HTML缺陷.你可以从www.crummy.com下载BeautifulSoup代码. port:端口.当你用套接字链接服务器,通常表示正在联系的的服务器应用程序的数字.例如,网页服务使用80端口,电子邮…
注:文章原文为Dr. Charles Severance 的 <Python for Informatics>.文中代码用3.4版改写,并在本机测试通过. 本书中的许多例子关注的是读取文件并查找数据,但在互联网中还有许多不同信息源. 本章我们将伪装成浏览器用超文本传送协议(HTTP)从网站获取网页,通读并分析它. 12.1 超文本传送协议-HTTP 支撑网页运转的网络协议实际非常简单,在Python中内置了套接字(socket)模块,使得使用套接字创建网络连接并获取数据变得非常容易. 套接字最…
14.1 什么是数据库 数据库一种存储结构数据的文件.绝大多数数据库类似字典——映射键和值的关系.最大的区别是数据库是保存在硬盘或其它永久性的存储上,所以在程序结束后它仍然存在.而保存在内存中的字典容量受限于计算机的内存配置,所以数据库可以比字典存储更多的数据. 类似字典,数据库软件在插入和访问数据时非常迅速,即使是庞大的数据.通过创建数据索引,数据库软件维持它的性能,并允许计算机快速跳至一个特定入口. 目前有很多不同目的的数据库系统,包括:Oracle, MySQL, 微软的SQL Serve…
注:文章原文为Dr. Charles Severance 的 <Python for Informatics>.文中代码用3.4版改写,并在本机测试通过. 12.5 HTML分析和网页抓取 urllib库一项最常用的功能是抓取网页.就是我们编写一个程序,将自己伪装成网页浏览器,在获取网页之后,再以查找模式检索网页中的数据. 以搜索引擎Google为例,它将查看一个网页的源码,然后抽取其中的链接,再用这些链接获取网页.抽取链接,并一直循环.使用这个技巧,Google几乎爬遍网页上的所有页面. G…