红港娱乐
您的当前位置:首页Python爬虫:HTTP协议、Requests库

Python爬虫:HTTP协议、Requests库

来源:红港娱乐
 HTTP协议:

HTTP(Hypertext Transfer Protocol):即超文本传输协议。URL是通过HTTP协议存取资源的Internet路径,一个URL对应一个数据资源。

HTTP协议对资源的操作:

Requests库提供了HTTP所有的基本请求方式。官方介绍:

Requests库的6个主要方法:

Requests库的异常:

Requests库的两个重要对象:Request(请求)、Response(相应)。Request对象支持多种请求方法;Response对象包含服务器返回的所有信息,也包含请求的Request信息。

Response对象的属性:

其中,r.encoding指:如果header中不存在charset,则认为编码为ISO‐8859‐1。

r.raise_for_status()可以直接知道r.status_code是否等于200。

HTTP协议与Requests库对比:

爬取网页的通用代码框架:

1 try:2 r = requests.get(url,timeout = 30)3 r.raise_for_status()4 # 如果状态不是200,引发HTTPError异常5 r.encoding = r.apparent_encoding6 return r.text7 except:8 return '产生异常'

例如,获取PMCAFF首页的信息:

 1 import requests 2 3 def getHtmlText(url): 4 try: 5 r = requests.get(url,timeout = 30) 6 r.raise_for_status() 7 r.encoding = r.apparent_encoding 8 return r.text 9 except:10 return '产生异常'11 12 if __name__ == '__main__':13 url = ''14 print(getHtmlText(url))

爬取网页的通用代码框架:操作环境:Mac,Python 3.6,PyCharm 2016.2

参考资料:中国大学MOOC课程《Python网络爬虫与信息提取》

----- End -----

作者:杜,微信公众号:杜,互联网产品经理。

显示全文