Python httplib模块使用实例

yipeiwu_com7年前Python基础

httplib模块是一个底层基础模块,实现的功能比较少,正常情况下比较少用到.推荐用urllib, urllib2, httplib2.

HTTPConnection 对象

class httplib.HTTPConnection(host[, port[, strict[, timeout[, source_address]]]])

创建HTTPConnection对象

HTTPConnection.request(method, url[, body[, headers]])

发送请求

HTTPConnection.getresponse()

获得响应

HTTPResponse对象

HTTPResponse.read([amt])
Reads and returns the response body, or up to the next amt bytes.

HTTPResponse.getheader(name[, default])

获得指定头信息

HTTPResponse.getheaders()

获得(header, value)元组的列表

HTTPResponse.fileno()

获得底层socket文件描述符

HTTPResponse.msg

获得头内容

HTTPResponse.version

获得头http版本

HTTPResponse.status

获得返回状态码

HTTPResponse.reason

获得返回说明

实例

复制代码 代码如下:

#!/usr/bin/python
import httplib

conn = httplib.HTTPConnection("www.jb51.net")
conn.request("GET", "/")
r1 = conn.getresponse()

print r1.status, r1.reason
print '-' * 40

headers = r1.getheaders()
for h in headers:
    print h
print '-' * 40

print r1.msg

输出:

复制代码 代码如下:

200 OK
----------------------------------------
('content-length', '106883')
('accept-ranges', 'bytes')
('vary', 'Accept-Encoding, Accept-Encoding')
('keep-alive', 'timeout=20')
('server', 'ngx_openresty')
('last-modified', 'Fri, 10 Apr 2015 09:30:10 GMT')
('connection', 'keep-alive')
('etag', '"55279822-1a183"')
('date', 'Fri, 10 Apr 2015 09:48:15 GMT')
('content-type', 'text/html; charset=utf-8')
----------------------------------------
Server: ngx_openresty
Date: Fri, 10 Apr 2015 09:48:15 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 106883
Connection: keep-alive
Keep-Alive: timeout=20
Vary: Accept-Encoding
Last-Modified: Fri, 10 Apr 2015 09:30:10 GMT
Vary: Accept-Encoding
ETag: "55279822-1a183"
Accept-Ranges: bytes

相关文章

Python实现接受任意个数参数的函数方法

这个功能倒也不是我多么急需的功能,只是恰好看到了,觉得或许以后会用的到。功能就是实现函数能够接受不同数目的参数。 其实,在C语言中这个功能是熟悉的,虽说实现的形式不太一样。C语言中的ma...

Python3 正在毁灭 Python的原因分析

Python 3毫不费力地成为发生在Python社区里最糟糕的事。我还记得第一次使用Python的时候,我还在花大量时间在C++这块上,而Python就像是我的一次开光。我可以打开文本编...

程序员写Python时的5个坏习惯,你有几条?

很多文章都有介绍怎么写好 Python,我今天呢,相反,说说写代码时的几个坏习惯。有的习惯会让 Bug 变得隐蔽难以追踪,当然,也有的并没有错误,只是个人觉得不够优雅。 注意:示例代码在...

简单了解python中对象的取反运算符

简单了解python中对象的取反运算符

取反运算符的原理: 1.对3取反:(取4位二进制) ①化为二进制: 3→0011 ②对二进制结果取反: 0011→1100 ③对结果先取反再加1: 1100→(~1100+...

Django打印出在数据库中执行的语句问题

先给大家介绍下Django打印出在数据库中执行的语句 有时我们需要看models操作时对应的SQL语句, 可以用如下方法查看--- 在django project中的settings文件...