最近要写一款基于被动式的漏洞扫描器,因为被动式是将我们在浏览器浏览的时候所发出的请求进行捕获,然后交给扫描器进行处理,本来打算自己写这个代理的,但是因为考虑到需要抓取https,所以最后找到Mitmproxy这个程序。安装方法:pipinstallmitmproxy接下来通过一个案例程序来了解它的使用,下面是目录结构sproxy|utils|__init__.py|parser.py|sproxy.pysproxy.py代码#coding=utf-8fro
系统 2019-09-27 17:50:22 2201
由于客户提供的是excel文件,在使用时期望使用csv文件格式,且对某些字段内容需要做一些处理,如从某个字段中固定的几位抽取出来,独立作为一个字段等,下面记录下使用acaconda处理的过程;importpandasdf=pandas.read_excel("/***/***.xlsx")df.columns=[内部为你给你的excel每一列自定义的名称](比如我给我的excel自定义列表为:["url","productName","***",。。。,"
系统 2019-09-27 17:49:31 2201
用户资料页面在用户资料页面,基本上没有什么特别要强调和介绍的新概念。只需要创建一个含有HTML的新视图函数模板页面即可。下面是视图函数(项目目录/views.py):@app.route('/user/')@login_requireddefuser(nickname):user=User.query.filter_by(nickname=nickname).first()ifuser==None:flash('不存在用户:'+nickname+'!')r
系统 2019-09-27 17:48:56 2201
女友让我给她论文的图片上加上字母序号,本来觉得是个很简单的事情,但那个白底黑字的圆圈序号却难住了我,试了几个常用的软件,都不行。后来用PS+动作,倒是能搞出来,不过也不容易,正好那天没搞完,于是拿回自己家做,但我的电脑上又没有PS,所以就用python实现了。效果图这里用的图片全是240X240的,按文件名的首字母作为序号,PIL虽然可以计算文字的尺寸,但类似D这样的字符依然不能处于圆圈的正中,所以还对个别字符做了偏移设置,本来想用aggdraw画圆圈的,
系统 2019-09-27 17:48:05 2201
方法abs()返回x的绝对值,-x-零之间的(正极)的距离。语法以下是abs()方法的语法:abs(x)参数x--这是一个数值表达式返回值此方法返回x的绝对值。例子下面的例子显示abs()方法的使用。#!/usr/bin/pythonprint"abs(-45):",abs(-45)print"abs(100.12):",abs(100.12)print"abs(119L):",abs(119L)当我们运行上面的程序,它会产生以下结果:abs(-45):4
系统 2019-09-27 17:46:57 2201
insert()方法插入对象obj到列表的偏移量索引。语法以下是insert()方法的语法:list.insert(index,obj)参数index--这是要插入对象obj必要的索引obj--这是将被插入到给定的列表中的对象返回值此方法不返回任何值,但它插入指定的索引处的指定元素例子下面的例子显示了insert()方法的使用#!/usr/bin/pythonaList=[123,'xyz','zara','abc']aList.insert(3,2009
系统 2019-09-27 17:46:55 2201
Tqdm是一个易用性强、扩展性高的Python进度条库,可以在Python长循环中添加一个进度提示信息,我们只需要封装任意的迭代器tqdm(iterator)即可。安装学习交流群:243771258安装过程如下:自动控制进度更新学习交流群:243771258传入可迭代对象输出结果为:使用方法trangetrange(i)是tqdm(range(i))的简单写法。学习交流群:243771258输出结果为:学习交流群:243771258为进度条设置描述在for
系统 2019-09-27 17:46:11 2201
目录一、初始递归二、递归示例讲解二分查找算法一、初始递归递归函数:在一个函数里在调用这个函数本身。递归的最大深度:998正如你们刚刚看到的,递归函数如果不受到外力的阻止会一直执行下去。但是我们之前已经说过关于函数调用的问题,每一次函数调用都会产生一个属于它自己的名称空间,如果一直调用下去,就会造成名称空间占用太多内存的问题,于是python为了杜绝此类现象,强制的将递归层数控制在了997(只要997!你买不了吃亏,买不了上当...).拿什么来证明这个“99
系统 2019-09-27 17:45:47 2201
reload()简介作用:用于重新载入之前载入的模块语法格式:reload(module)参数:module为模块对象,必须已经被加载返回值:返回模块对象注意事项:多次重复使用import语句时,不会重新加载被指定的模块,只是把对该模块的内存地址给引用到本地变量环境。reload()会重新加载已加载的模块,重新编译模块,重新执行模块级代码,但是__init__函数不再重复执行,原来已经使用的实例还是会使用旧的模块,而新生产的实例会使用新的模块;reload
系统 2019-09-27 17:45:41 2201
Heroku是一个很棒的平台,它有很多的控件,并且搭建环境相对来说也比较容易。本指南中,我将一步一步指导你在Heroku平台上部署一个简单地Django应用搭建开发环境Heroku工具链假设你已经在Heroku平台上注册了一个帐户,并且在里面创建了一款应用,为了一会儿通过CLI与Heroku交互,你需要安装Heroku工具链。在这篇指南中,我们用"Sample-Project"作为应用的名字。Git仓库在部署你的应用到Heroku之前,你需要先将你的代码签
系统 2019-09-27 17:38:25 2201