首页 > 代码库 > Python学习-19.Python的Http模块

Python学习-19.Python的Http模块

模拟 http 请求是比较常见的一种需求,在 Python 中,使用 http 模块操作。

 1 import http.client 2              3 # 创建 Http 连接。 4 http = http.client.HTTPConnection(www.baidu.com) 5 # 设置请求,第一个参数为请求方法,第二个参数为请求的页面。 6 http.request(GET,/) 7 # 获取百度主页的内容,返回的是一个 bytes。 8 html = http.getresponse().read() 9 # 关闭 Http 连接。10 http.close()11 12 # 新建文件,并使用 utf-8 编码,否则写入时会出错。13 file = open(re:\temp\baidu.html,w,encoding=utf-8)14 # 写入解码后的 Html 内容。15 file.write(html.decode())16 # 关闭文件。17 file.close()

值得注意的是,我们需要设置好编码,在Python中,open新建的文件默认是ascii的,而我们获取到的内容是unicode的,因此直接写入的话会出错。在命令行模式下输出同理,因为命令行的编码模式是gbk。

Python学习-19.Python的Http模块