欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 养生 > 4.7-python request库的基本使用

4.7-python request库的基本使用

2025/4/8 9:15:58 来源:https://blog.csdn.net/2301_79752960/article/details/147047698  浏览:    关键词:4.7-python request库的基本使用

1.首先下载 requests pip3 install requests

1.get请求

# 导入requests库 用于发送http请求 
import requests# 使用requests库中的get方法向百度网址发送一个GET请求
# 并将响应对象赋值给变量r
r = requests.get('https://www.baidu.com')# 打印响应对象r的文本内容
print(r.text.encode('utf-8'))

2.post请求

import requestsdata = {'name':'test'}# 使用 requests.post 方法发送 POST 请求到指定 URL,并携带数据
# 'https://httpbin.org/post' 是一个用于测试 HTTP 请求的公共服务
response = requests.post(''https://httpbin.org/post',data=data)# 打印文本
print(response.text)

3.带参数的get请求

import requests# 定义请求的参数
data = {'key1':'value1','key2':'value2'}
response = requests.get('https://httpbin.org/get', params=data)# 打印文本
print(response.text)
# 打印状态码
print(response.status_code)
# 打印响应的二进制内容
print(response.content)
# 打印响应头信息
print(response.header)
# 打印最终请求的url
print(response.url)

补充 :状态码的表示

1xx信息性状态码表示服务器已经收到请求,正在处理中
2xx成功状态码表示请求已经成功被服务器接收,理解并处理 
3xx重定向状态码       表示客户端需要采取进一步的操作来完成请求,
4xx客户端错误状态码       表示客户端发送的请求有错误
5xx服务器错误状态码表示服务器请求时发生了错误

补充 :前后端请求方式
 

GET请求用于向服务器获取资源,通常用于查询数据,请求参数会附加在url的后买你,以?号分割(幂等)
POST请求用于向服务器提交数据,通常用于创建新资源或执行非等幂操作,如注册,登录等(非幂等)
PUT请求用于更新服务器上的资源,他通常用于替换整个资源,如果资源不存在则创建新资源(幂等)
DELETE请求用于删除服务上的资源,根据请求的URL指定要删除的资源

注意:幂等和非幂等的区别

        幂等操作:幂等操作是无论只能够一次还是多次,所产生的影响都是相同的,也就是说,多次执行相同的操作不会产生额外的影响主要有get,head,put,delete

        非幂等操作:指每次执行操作都会产生不同的影响,多次执行相同的操作可能会导致状态的多次改变例如post

4.获取响应式数据

import requests# 获得图片
response = requests.get('url地址')
with open('文件名.文件扩展名','wb') as f:f.write(response.content)# 获得json格式的数据
response = requests.get('http://httpbin.org/ip')
data = response.json()
print(data)
print(data['origin'])
print(response.status_code)

5.自定义请求头信息

import requestsheader = {'user-agent':'baidu/v1'
}response = requests.get('http://www.httpbin.org/get', headers=header)# 打印发送请求时候携带的请求头信息
print(response.request.headers)
# 打印服务器返回的响应头信息
print(response.headers)

6.设置超时时间

import requests# 设置超时时间为1秒 通常2-3秒
response = requests.get('http://github.com'.timeout=1)print(response.text)# 如果超时则会抛出异常 request.exceptions.Timeoutprint(response.status_code)

7.查询服务端的cookie

import requests# 1.获取cookie
url = 'https://www.baidu.com'# 定义请求头
header = {'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36 Edg/135.0.0.0'
}response = requests.get(url,headers=header)print(response.headers)
print(response.cookies)
print(response.cookies['BAIDUID'])# 2.设置cookies
url = 'https://www.httpbin.org/cookies'
cookies = dict(cookies_are= 'hello')
response = requests.get(url,cookies=cookies)
print(response.text)

8.SSL证书设置

import requests# 参数2 verify = False 关闭SSL证书验证
# 如果有证书 则参数2 指向证书位置如 verify = '/path/to/vertificate'
response = requests.get("https://www.hengxun.com/news/content/1028.htm",verify=False)#当 verify 设置为证书文件的路径(如 verify='/path/to/certificate')时,requests 库会使用该证书# # 来验证服务器的 SSL 证书,确保连接的安全性。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词