原理在网页源码中如果出现将用户输入数据进行反序列化当成参数输出时,出现漏洞,可造成任意命令执行例如网页源码try:become=self.get_argument('become')p=pickle.loads(urllib.unquote(become))returnself.render('form.html',res=p,member=1)except:returnself.render('form.html',res='ThisisBlackTec
系统 2019-09-27 17:51:41 2060
目录python协程详解一、什么是协程二、了解协程的过程1、yield工作原理2、预激协程的装饰器3、终止协程和异常处理4、让协程返回值5、yieldfrom的使用6、yieldfrom的意义三、greenlet的使用四、gevent的使用python协程详解一、什么是协程协程又称为微线程,协程是一种用户态的轻量级线程协程拥有自己的寄存器和栈。协程调度切换的时候,将寄存器上下文和栈都保存到其他地方,在切换回来的时候,恢复到先前保存的寄存器上下文和栈,因此:
系统 2019-09-27 17:51:34 2060
一、背景今天闲着无事,写了一个小小的Python脚本程序,然后给同学炫耀的时候,发现每次都得拉着其他人过来看着自己的电脑屏幕,感觉不是很爽,然后我想着网上肯定有关于Python脚本转换成可执行文件的操作,事不宜迟,我就开始了问度娘,各种寻找资料,发现网上的资料太多了,有一些比较老了,适合Python2.x系列,在现在Python3流行的时代,我们当然是直接无视,但是各种方法凌乱的很,各种教程也是或全或缺的,鄙人也捣鼓了可久,后来发现一种方法挺多人用的,在自
系统 2019-09-27 17:51:28 2060
lxml是python的一个解析库,支持HTML和XML的解析,支持XPath解析方式,而且解析效率非常高XPath,全称XMLPathLanguage,即XML路径语言,它是一门在XML文档中查找信息的语言,它最初是用来搜寻XML文档的,但是它同样适用于HTML文档的搜索XPath的选择功能十分强大,它提供了非常简明的路径选择表达式,另外,它还提供了超过100个内建函数,用于字符串、数值、时间的匹配以及节点、序列的处理等,几乎所有我们想要定位的节点,都可
系统 2019-09-27 17:50:58 2060
函数:split()Python中有split()和os.path.split()两个函数,具体作用如下:split():拆分字符串。通过指定分隔符对字符串进行切片,并返回分割后的字符串列表(list)os.path.split():按照路径将文件名和路径分割开一、函数说明1、split()函数语法:str.split(str="",num=string.count(str))[n]参数说明:str:表示为分隔符,默认为空格,但是不能为空('')。若字符串
系统 2019-09-27 17:50:49 2060
这篇文章主要介绍了Python检查云备份进程是否正常运行代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下场景:服务器自动备份数据库文件,每两小时生成一个新备份文件,通过云备份客户端自动上传,需要每天检查是否备份成功。实现:本脚本实现检查文件是否备份成功,进程是否正常运行,并且发送相关邮件提醒。#!/usr/bin/envpythonimportosimporttimeimportsmtplibfro
系统 2019-09-27 17:50:29 2060
目录一、Admin的配置1.激活管理工具2.使用管理工具3.注册超级用户4.修改语言二、管理数据模型1.注册medel类到admin2.自定制类一、Admin的配置Admin是Django的一个强大的功能,它能从数据库中读取数据,并呈现在页面中,进行管理。默认情况下,它的功能已经非常强大,如果你不需要复杂的功能,它已经够用,但是有时候,一些特殊的功能还需要定制,比如搜索功能,下面这一系列文章就逐步深入介绍如何定制适合自己的admin应用。1.激活管理工具通
系统 2019-09-27 17:49:37 2060
python的新式类是2.2版本引进来的,我们可以将之前的类叫做经典类或者旧式类。为什么要在2.2中引进newstyleclass呢?官方给的解释是:为了统一类(class)和类型(type)。在2.2之前,比如2.1版本中,类和类型是不同的,如a是ClassA的一个实例,那么a.__class__返回‘class__main__.ClassA‘,type(a)返回总是。而引入新类后,比如ClassB是个新类,b是ClassB的实例,b.__class__
系统 2019-09-27 17:49:33 2060
1.Django中的CBV模式在这里插入图片描述2.Flask中的CBV和FBVdefauth(func):definner(*args,**kwargs):result=func(*args,**kwargs)returnresultreturninnerclassIndexView(views.MethodView):#methods=['POST']#只允许POST请求访问decorators=[auth,]#如果想给所有的get,post请求加装饰
系统 2019-09-27 17:49:30 2060
1.python的历史2004年Django框架诞生python2:源码不统一,有重复的功能代码python3:源码统一,没有重复功能代码2.python是一个什么编程语言编译型:统一翻译,只翻译一次(代表C)优点:执行速度快;编译器一般会有预编译的过程对代码进行优化。因为编译只做一次,运行时不需要编译,所以编译型语言的程序执行效率高。可以脱离语言环境独立运行。缺点:开发速度慢;编译之后如果需要修改就需要整个模块重新编译。编译的时候根据对应的运行环境生成机
系统 2019-09-27 17:48:23 2060