python自3.x版本推出之后,web端的编程更加方便。对于python的Internet方面的官方提供接口可以在Internet Protocols and Support栏目下查询。在该栏目下可以发现包括ftp(文件传输协议)、smtp(邮件协议)等相关的应用层的编程接口。除此之外,python对网络端的数据处理也提供了非常好的支持,具体内容可以参考Internet Data Handlingt。在该栏目中python对常用的ascii和json,还有一些其他的数据编解码都提供了很好的接口支持。不过,这些都不是我们本文的重点,我们这里是主要讨论Internet Protocols and Support下python对使用http协议的的web端开发相关的内容。当然如果有可能,还是建议使用更好的web开发框架,比如webpy、django,或者其他的请求协议框架比如Requests
文章分为三部分,第一部分是讲解python提供的库的支持,第二部分讲述简单的使用场景,第三部分是我认为有用的链接,包括官方的教程和一些深入的介绍的资料。
python库介绍
在web端编程主要使用的库有两个。
一个是和url请求与返回相关的包urllib,其主要包括:
- urllib.request for opening and reading URLs
- urllib.error containing the exceptions raised byurllib.request
- urllib.parse for parsing URLs
- urllib.robotparser for parsingrobots.txt files
- http.client is a low-level HTTP protocol client; for high-level URL opening useurllib.request
- http.server contains basic HTTP server classes based onsocketserver
- http.cookies has utilities for implementing state management with cookies
- http.cookiejar provides persistence of cookies