如何使用Python中的requests库进行HTTP请求和响应处理?
Python的requests库是一个HTTP客户端库,能够方便地发送HTTP/1.1请求,并接收服务器的响应。requests库的优点在于其简单易用,且能够应对大多数的HTTP请求情况。
1. 发送HTTP请求
使用requests库发送HTTP请求有以下几个步骤:
(1)引入requests库
> import requests
(2)发送请求
requests库的请求方法有很多,如GET、POST、HEAD、PUT、DELETE等。其中最常用的是GET和POST方法。
示例:使用GET请求百度首页
> url = 'https://www.baidu.com/'
> response = requests.get(url=url)
示例:使用POST请求发送数据
> url = 'http://example.com/login'
> data = {'username': 'admin','password': 'admin123'}
> response = requests.post(url=url, data=data)
2. 响应处理
requests库发送请求后会得到服务器的响应,可以通过response对象来处理响应结果。response对象包含了HTTP响应的所有内容,包括响应头、响应体和响应码等。
(1)响应码
响应码表示服务器针对请求的处理结果,通常以3位数字表示。通过response对象的status_code属性来获取响应码。
> print(response.status_code)
(2)响应头
响应头是HTTP响应中的一部分,包含了一些元信息,例如响应内容类型、响应日期、服务器信息等。可以通过response对象的headers属性来获取响应头信息。
> print(response.headers)
(3)响应体
响应体是HTTP响应的核心内容,也就是我们请求后得到的数据。可以通过response对象的text属性来获取响应体的文字内容。
> print(response.text)
(4)其他属性
除了上述常用的属性,response对象还包含了其他一些属性,例如cookies、encoding、history、json等。
示例:获取响应中Cookies的属性
> cookies = response.cookies
> for cookie in cookies:
> print(cookie.name, cookie.value)
通过以上的介绍,我们可以简单认识如何使用Python中的requests库进行HTTP请求和响应处理。requests库的简单易用性已经被广泛认可,适用于多数的HTTP请求场景,为日常网络爬虫和网页开发提供了很大的便利。
