python实现测试工具(一)——命令行发送get请求


Posted in Python onOctober 19, 2020

本系列教程我们将使用python实现一些简单的测试工具,为了尽可能的简单,我们的工具以命令行工具为主。

本系列教程使用的python版本是3.6.3。

背景

这一节我们实现简单的命令行发送get请求的工具,使用方式如下:

python get.py www.v2ex.com/api/nodes/show.json\?name\=python
接口地址: http://www.v2ex.com/api/nodes/show.json?name=python

状态码: 200

Headers:
Date : Tue, 10 Jul 2018 07:06:12 GMT
Content-Type : application/json;charset=UTF-8
Transfer-Encoding : chunked
Connection : keep-alive
Vary : Accept-Encoding
X-Rate-Limit-Remaining : 119
Expires : Tue, 10 Jul 2018 08:03:49 GMT
Server : Galaxy/3.9.8.1
Etag : W/"76a33d25372411dc6fa4190a5cf9679caa0edc2a"
X-Rate-Limit-Reset : 1531209600
Cache-Control : max-age=3600
X-Rate-Limit-Limit : 120
Google : XY
Content-Encoding : gzip
Strict-Transport-Security : max-age=31536000
{
  "id" : 90,
  "name" : "python",
  "url" : "https://www.v2ex.com/go/python",
  "title" : "Python",
  "title_alternative" : "Python",
  "topics" : 9530,
  "stars" : 6601,

    "header" : "这里讨论各种 Python 语言编程话题,也包括 Django,Tornado 等框架的讨论。这里是一个能够帮助你解决实际问题的地方。",


    "footer" : null,

  "created" : 1278683336,
  "avatar_mini" : "//cdn.v2ex.com/navatar/8613/985e/90_mini.png?m=1531131631",
  "avatar_normal" : "//cdn.v2ex.com/navatar/8613/985e/90_normal.png?m=1531131631",
  "avatar_large" : "//cdn.v2ex.com/navatar/8613/985e/90_large.png?m=1531131631"
}

主要使用场景是快速访问http的api接口,查看状态码,响应头以及响应内容。

代码实现

简单起见,我们会用到requests库。

import requests
from sys import argv

USAGE = '''
USAGE:
python get.py https://api.github.com
'''

if len(argv) != 2:
 print(USAGE)
 exit()

script_name, url = argv

if url[:4] != 'http':
 url = 'http://' + url

r = requests.get(url)

print(f"接口地址: {url}\n")
print(f"状态码: {r.status_code}\n")
print(f"Headers:")
for key, value in r.headers.items():
 print(f"{key} : {value}")

print(r.text)

动手时间

  • 抄一遍代码,看自己能不能运行起来
  • 给这段代码每一行都加上注释,理解代码做了些什么
  • 如果需要在发送get请求的时候默认加上Content-Type: application/json的headers,这段代码该如何修改

源码地址

https://github.com/easonhan007/simple_test_tools

以上就是python实现测试工具(一)——命令行发送get请求的详细内容,更多关于python 命令行发送get请求的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python中enumerate函数用法实例分析
May 20 Python
Python md5与sha1加密算法用法分析
Jul 14 Python
python通过Windows下远程控制Linux系统
Jun 20 Python
WxPython建立批量录入框窗口
Feb 27 Python
Python 使用 Pillow 模块给图片添加文字水印的方法
Aug 30 Python
pytest中文文档之编写断言
Sep 12 Python
python文件和文件夹复制函数
Feb 07 Python
python中lower函数实现方法及用法讲解
Dec 23 Python
解决Pytorch dataloader时报错每个tensor维度不一样的问题
May 28 Python
Python anaconda安装库命令详解
Oct 16 Python
python超详细实现完整学生成绩管理系统
Mar 17 Python
Python函数对象与闭包函数
Apr 13 Python
基于Python制作一副扑克牌过程详解
Oct 19 #Python
Python实现壁纸下载与轮换
Oct 19 #Python
Python调用REST API接口的几种方式汇总
Oct 19 #Python
Python爬虫抓取论坛关键字过程解析
Oct 19 #Python
python MD5加密的示例
Oct 19 #Python
python Yaml、Json、Dict之间的转化
Oct 19 #Python
Python pip 常用命令汇总
Oct 19 #Python
You might like
中国站长站 For Dede4.0 采集规则
2007/05/27 PHP
Thinkphp调用Image类生成缩略图的方法
2015/03/07 PHP
laravel5使用freetds连接sql server的方法
2018/12/07 PHP
tp5(thinkPHP5框架)时间查询操作实例分析
2019/05/29 PHP
JavaScript中window、doucment、body的解释
2013/08/14 Javascript
JavaScript中Math对象方法使用概述
2014/01/02 Javascript
详解AngularJS中$http缓存以及处理多个$http请求的方法
2016/02/06 Javascript
Bootstrap教程JS插件弹出框学习笔记分享
2016/05/17 Javascript
如何用JavaScript实现动态修改CSS样式表
2016/05/20 Javascript
JS小数运算出现多为小数问题的解决方法
2016/06/02 Javascript
jQuery实现弹出带遮罩层的居中浮动窗口效果
2016/09/12 Javascript
JavaScript面试题大全(推荐)
2016/09/22 Javascript
基于jQuery和Bootstrap框架实现仿知乎前端动态列表效果
2016/11/09 Javascript
ui-router中使用ocLazyLoad和resolve的具体方法
2017/10/18 Javascript
webpack 样式加载的实现原理
2018/06/12 Javascript
D3.js实现拓扑图的示例代码
2018/06/30 Javascript
vue 根据数组中某一项的值进行排序的方法
2018/08/30 Javascript
vue实现一拉到底的滑动验证
2019/07/25 Javascript
用Node写一条配置环境的指令
2019/11/14 Javascript
详解vue-router 动态路由下子页面多页共活的解决方案
2019/12/22 Javascript
JS实现长图上下滚动效果
2020/03/19 Javascript
jQuery实现开关灯效果
2020/08/02 jQuery
利用js实现简易红绿灯
2020/10/15 Javascript
JavaScript实现京东快递单号查询
2020/11/30 Javascript
Python实现的HTTP并发测试完整示例
2020/04/23 Python
python调用matlab的m自定义函数方法
2019/02/18 Python
对django 模型 unique together的示例讲解
2019/08/06 Python
python获取引用对象的个数方式
2019/12/20 Python
Python常用数字处理基本操作汇总
2020/09/10 Python
HTML最新标准HTML5总结(必看)
2016/06/13 HTML / CSS
保安岗位职责
2014/02/21 职场文书
医学生就业推荐表自我鉴定
2014/03/26 职场文书
教师职业道德事迹材料
2014/08/18 职场文书
干部职工纪律作风整改措施思想汇报
2014/10/11 职场文书
2014年幼儿园老师工作总结
2014/12/05 职场文书
教师节老师寄语
2015/05/28 职场文书