【接口测试】发送get/post请求
一种是使用requests库发送(post/get/head)请求
第一种:使用requests库发送get请求(要提前安装requests库)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | import requests # 输入URL地址,请求方法 URL = r "http://apis.juhe.cn/ip/ipNewV3" # 输入请求的参数键值对 param = { "ip" : "112.112.11.11" , "key" : "6df4403c2664b954ef63118c3f3df7d6" } # 使用get方法发送请求 response = requests.get(url = URL, params = param) # 返回数据的格式为json字符串 head = response.headers res = response.json() statu = response.status_code # print 打印出head,返回json字符串,返回http状态码 print (f "请求头是{head}" ) print (f "返回的json数据是{res}" ) print (f "返回的状态码是{statu}" ) |
第二种:使用urllib库
获取headers和http状态码
1 2 3 4 5 6 7 8 9 10 | # 导包 import urllib.request # 输入url地址 URL = r "http://www.baidu.com" # 发送请求,打开地址,获取html页面 response = urllib.request.Request(url = URL) html = urllib.request.urlopen(response) # 打印响应头,状态码 print (html.headers) print (html.getcode()) |
urllib发送post请求
1 2 3 4 5 6 7 8 9 10 | # 输入URL地址,参数 URL = r "http://www.tuling123.com/openapi/api" paras = { "key" : "you" , "info" : "你好" } # <strong>首先要进行encode编码</strong>,然后发送post请求,打开地址,获取html页面 para = urllib.parse.urlencode(paras).encode( "utf-8" ) response = urllib.request.Request(url = URL, data = para) html = urllib.request.urlopen(response) # 打印出响应头,状态码 print (f "headers:{html.headers}" ) print (f "status_code:{html.getcode()}" ) |
小结:
requests和urllib都可以发送get/post请求
get请求一般使用params,post请求一般用data(post也可以用params)
requests获取http状态码: response.starus_code urllib获取请求状态码 html.getcode()
urllib发送post请求之前,需要进行编码,urllib.parse.urlencode(paras).endcode("utf-8")
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!