前言一个业务型的服务,被open接口后,遭遇并发扫数据,于是要做限流操作。一直固执的认为,业务API和OpenAPI要分开处理,或许因为起初接入其他企业ERP系统都是走较为规范的OpenAPI,始终对于这种开发系统业务API的做法感觉不好。窗口限流需求是要在Django的一个工程里做限流,倘若是rest_framework的View也好办,直接就提供了限流rest_frameworkthrottling可参照文档设置。不能直接使用设置的原因是,面对是Dja
系统 2019-09-27 17:49:39 1944
一、用例编写规则1.unittest提供了testcases、testsuites、testfixtures、testrunner相关的类,让测试更加明确、方便、可控。使用unittest编写用例,必须遵守以下规则:(1)测试文件必须先importunittest(2)测试类必须继承unittest.TestCase(3)测试方法必须以“test_”开头(4)测试类必须要有unittest.main()方法2.pytest是python的第三方测试框架,是
系统 2019-09-27 17:49:08 1944
--安装python从官方网站下载并安装Python3.x最新版https://www.python.org/downloads/mac-osx/--安装pippip是python第三方包(扩展功能包)安装和管理工具,有了它我们可以安装各种扩展功能终端执行下面的命令,安装pipsudoeasy_installpip--安装virtualenvVirtualenv是用来为每个项目创建单独的python虚拟运行环境,每个项目可以使用不同的第三方包,各个项目互不
系统 2019-09-27 17:48:32 1944
在实验中需要自己构造单独的HTTP数据报文,而使用SOCK_STREAM进行发送数据包,需要进行完整的TCP交互。因此想使用原始套接字进行编程,直接构造数据包,并在IP层进行发送,即采用SOCK_RAW进行数据发送。使用SOCK_RAW的优势是,可以对数据包进行完整的修改,可以处理IP层上的所有数据包,对各字段进行修改,而不受UDP和TCP的限制。下面开始构造HTTP数据包,IP层和TCP层使用python的Impacket库,http内容自行填写。#!/
系统 2019-09-27 17:48:25 1944
1.python的历史2004年Django框架诞生python2:源码不统一,有重复的功能代码python3:源码统一,没有重复功能代码2.python是一个什么编程语言编译型:统一翻译,只翻译一次(代表C)优点:执行速度快;编译器一般会有预编译的过程对代码进行优化。因为编译只做一次,运行时不需要编译,所以编译型语言的程序执行效率高。可以脱离语言环境独立运行。缺点:开发速度慢;编译之后如果需要修改就需要整个模块重新编译。编译的时候根据对应的运行环境生成机
系统 2019-09-27 17:48:23 1944
测试的过程中经常需要截取屏幕,通常的做法是使用手机自带的截屏功能,然后将截屏文件复制出来,这种方法的优点是不需要连接数据线就可截屏,缺点则是生成的截屏文件命名是随机命名的,复制出来也比较麻烦。另一种方法是使用PC端的手机助手类软件。这里使用python编写一个截屏的脚本,双击运行脚本就OK,截屏成功后会将截屏文件已当前时间命名,并保存在存放脚本的当前路径的screenshot文件夹下:#!/usr/bin/envpythonimportosimportti
系统 2019-09-27 17:47:18 1944
预编译importrere1=re.compile(r'元字符组成的正则规则')#元字符下面会说re1.方法()#方法下边也会说元字符:表示普通字符:.#除了\n外都可以匹配的到\d#只匹配纯数字0-9\D#和\d相反,除了数字全都匹配\s#只匹配空格\S#和\s相反,除了空格,全都匹配#我喜欢用[\s\S]*?匹配所有\w#只匹配纯数字或大小写字母或下划线\W#与\w恰好相反,除了纯数字、大小写字母、下划线全都匹配[]#[abcde]只要包含这个列表的字
系统 2019-09-27 17:46:42 1944
很多时候可能需要在一个图中画出多条函数图像,但是可能y轴的物理含义不一样,或是数值范围相差较大,此时就需要双y轴。matplotlib和seaborn都可以画双y轴图像。一个例子:importseabornassnsimportmatplotlib.pyplotasplt#ax1forKDE,ax2forCDFf,ax1=plt.subplots()ax1.grid(True)#ax1.set_ylim(0,1)ax1.set_ylabel('KDE')a
系统 2019-09-27 17:46:19 1944
3.练习题3判断语句要求:判断语句的作用是什么?列举你所想到的开发中使用判断语句的场景。编写代码,1-7七个数字,分别代表周一到周日,如果输入的数字是6或7,输出“周末”。参考代码:#coding=utf-8day=int(input("请输入1-7中任意一个数:"))ifday==1:print("今天是周一")elifday==2:print("今天是周二")elifday==3:print("今天是周三")elifday==4:print("今天是周
系统 2019-09-27 17:46:07 1944
前言项目中大量用到图片加载,由于图片太大,加载速度很慢,因此需要对文件进行统一压缩一:导入包fromPILimportImageimportos二:获取图片文件的大小defget_size(file):#获取文件大小:KBsize=os.path.getsize(file)returnsize/1024三:拼接输出文件地址defget_outfile(infile,outfile):ifoutfile:returnoutfiledir,suffix=os.
系统 2019-09-27 17:46:02 1944