- 博客(126)
- 资源 (2)
- 收藏
- 关注
原创 Flask项目实战——4—(邮箱的验证码发送、Redis数据库存储验证码、邮箱修改功能、权限管理)
1、邮箱的修改、验证邮箱的url_for绑定重定向邮箱修改的url,绑定url和html、样式文件添加修改邮箱的html页面文件:修改密码文件:templates/cms/cms_resetemail.html<!-- 继承模板文件cms/cms_base.html 简化代码 -->{% extends 'cms/cms_base.html' %}<!-- 页面标题 -->{% block title %} 修改邮箱{% endblock %}&
2020-05-18 19:39:44
2532
2
原创 Flask项目实战——3—(ajax实现修改密码功能、restful定义项目规范、弹窗显示信息功能)
1、修改密码在之前的个人中心界面渲染绑定之后,就可以绑定用户修改密码的界面了,需要添加模板文件:修改密码文件templates/cms/cms_resetpwd.html<!-- 继承模板文件cms/cms_base.html 简化代码 -->{% extends 'cms/cms_base.html' %}<!-- 页面标题 -->{% block title %} 修改密码{% endblock %}<!-- 标题 -->{% b
2020-05-17 16:17:59
1088
原创 Flask项目实战——2—(后台用户登录验证、错误登录信息渲染到前端界面、钩子函数和装饰器、CSRF验证保护、用户名渲染和注销功能、模板继承)
1、后台用户登录验证1、用户登录的操作是post提交方式:将后台用户提交的form表单信息收集:创建cms/forms.py文件后台登录用户表单收集文件:forms.py文件# -*- encoding: utf-8 -*-"""@File : forms.py@Time : 2020/5/11 10:00@Author : chen"""# forms表单信息from wtforms import Form, StringField, IntegerFieldfr
2020-05-13 17:39:00
1909
原创 Flask框架的学习——12—(cookie和session、Flask上下文、常用的钩子函数、Restful API规范、Flask-Restful插件、参数解析、 输出字段、)
1、cookie和sessioncookie:在网站中,http请求是无状态的。也就是说即使第一次和服务器连接后并且登录成功后,第二次请求服务器依然不能知道当前请求是哪个用户。cookie的出现就是为了解决这个问题,第一次登录后服务器返回一些数据(cookie)给浏览器,然后浏览器保存在本地,当该用户发送第二次请求的时候,就会自动的把上次请求存储的cookie数据自动的携带给服务器,服务器通过...
2020-05-10 20:52:45
949
原创 Ubuntu 16.4中设置Pycharm专业版
1、Pycharm的基础设置字体,颜色等设置打开pycharm进入软件的主界面:点击File—>Setting进行设置点击appearance&behavior-appearance,进入如下的界面。进入如下的操作界面后后,我们在右侧的选项中找到“theme”一栏,并将其设置为darcula,此时背景颜色即可变为深色,用户可以根据自己的需要进行调整。用户还可以在这一...
2020-05-06 10:41:36
305
原创 Ubuntu 16.4中搭建MySQL数据库,设置远程登录,SQLyog图形化界面展示
1、搭建数据库1、安装MySQLsudo apt install mysql-server-5.7 # (建议安装5.7版本,该版本稳定且兼容性强) 注:安装过程中,会提示输入root用户的密码,输入结束后回车;会再次提示一个确认密码,输入后回车,等待安装。(自己使用就设置密码为root,方便易记)。2、安装结束后进入mysql的指令:mysql -u root -...
2020-05-05 17:51:33
1257
原创 Django的安装、创建、运行的知识点
'''pip3 install virtualenv安装虚拟环境virtualenv env_test创建env_test的虚拟环境cd F:\learn\env_test\Scripts进入这个安装虚拟环境的路径执行 activate路径就改为了 (env_test) F:\learn\env_test\Scripts>之前是 (venv) F:\lear...
2020-05-05 10:09:38
169
原创 Web安全攻防的学习——10—(存储型XSS测试、环境搭建、定向挖掘XSS漏洞、CSRF原理介绍、文件上传绕过验证常用方式)
1、存储型XSS测试环境搭建1.下载ROCBOSS:https://www.rocboss.com/2.按照文档进行安装将解压后文件放入phpstudy中的路径中:打开之前使用的Phpstudy软件,开启Apache和Mysql的服务。此时网页还不显示任何信息,需要进入安装过程:1、修改pconline的配置文件2、打开Webyog SQLyog这个软件,新建命名为:roc...
2020-05-03 16:48:30
1814
原创 Flask框架的学习——11—(WTForms表单验证-常用验证器、文件上传、上传文件名称中文问题、验证上传文件格式)
1、WTForms表单验证Flask-WTFFlask-WTF是简化了WTForms操作的一个第三方库。WTForms表单的两个主要功能是验证用户提交数据的合法性以及渲染模板。当然还包括一些其他的功能:CSRF保护,文件上传等。安装Flask-WTF默认也会安装WTForms,因此使用以下命令来安装Flask-WTF。pip install flask-wtf安装完Flask-WTF后。...
2020-05-01 20:06:05
920
原创 Flask框架的学习——10—(Flask-SQLAlchemy插件、Flask-Script命令行传参、Flask-Migrate数据迁移、WTForms表单验证)
1、Flask-SQLAlchemy插件另外一个框架,叫做Flask-SQLAlchemy,Flask-SQLAlchemy是对SQLAlchemy进行了一个简单的封装,使得我们在flask中使用sqlalchemy更加的简单。可以通过pip install flask-sqlalchemy。数据库初始化:数据库初始化不再是通过create_enginefrom flask impor...
2020-04-29 17:35:20
598
原创 Flask框架的学习——09—(表关系、排序和查询、limit、offset和切片、group_by、having、join方法、别名、子查询)
1、表关系一对一一对一其实就是一对多的特殊情况。from sqlalchemy import create_engine, Column, Float, String, DATETIME, TEXT, Integer, String, Float, TEXT, ForeignKeyfrom sqlalchemy.orm import sessionmaker, relationship, ...
2020-04-26 21:57:45
725
原创 Flask框架的学习——08—(数据库过滤条件、外键及其四种约束、表关系、反向查询模型属性)
1、数据库过滤条件过滤是数据提取的一个很重要的功能,以下对一些常用的过滤条件进行解释,并且这些过滤条件都是只能通过filter方法实现的。equalsnot equalslikeinnot inis nullis not nullandor# -*- encoding: utf-8 -*-from sqlalchemy import create_engine, Col...
2020-04-23 21:32:38
390
原创 Flask框架的学习——07—(Flask操作MySQL数据库、使用ORM对数据库的增删改查操作、SQLAlchemy属性常用数据类型)
1、Flask操作MySQL数据库在上一篇博客中创建完数据表,并且做完和数据库的映射后,接下来让我们添加数据进去。from sqlalchemy import create_engine, Column, Integer, Stringfrom sqlalchemy.ext.declarative import declarative_basefrom sqlalchemy.orm imp...
2020-04-22 19:11:59
590
原创 Flask框架的学习——06—(子域名、Flask与数据库、SQLAlchemy、ORM介绍、ORM操作数据库)
1、子域名子域名在许多网站中都用到了,比如一个网站叫做xxx.com,那么我们可以定义一个子域名cms.xxx.com来作为cms管理系统的网址,子域名的实现一般也是通过蓝图来实现,我们创建蓝图的时候添加了一个url_prefix=/user作为url前缀,那样我们就可以通过/user/来访问user下的url。但使用子域名则不需要。另外,还需要配置SERVER_NAME。比如app.conf...
2020-04-19 20:27:19
425
原创 Flask框架的学习——05—(类视图、基于调度方法的视图、权限验证、蓝图、url_prefix参数的使用、寻找静态资源文件、寻找静态模板文件、url_for生成url)
1、类视图之前我们接触的视图都是函数,所以一般简称视图函数。其实视图也可以基于类来实现,类视图的好处是支持继承,但是类视图不能跟函数视图一样,写完类视图还需要通过app.add_url_rule(url_rule,view_func)来进行注册。1.1 标准类视图标准类视图是继承自flask.views.View,并且在子类中必须实现dispatch_request方法,这个方法类似于视图函...
2020-04-18 21:14:44
1841
原创 Flask框架的学习——04—(模版继承、静态文件的配置、豆瓣APP界面案例实现)
1、模版继承Flask中的模板可以继承,通过继承可以把模板中许多重复出现的元素抽取出来,放在父模板中,并且父模板通过定义block给子模板开一个口,子模板根据需要,再实现这个block,假设现在有一个father_html.html这个父模板。<!DOCTYPE html><html lang="en"><head> <meta chars...
2020-04-15 11:10:14
422
原创 Flask框架的学习——03—(Jinja2模版过滤器、控制语句、宏和import语句、include和set语句)
1、Jinja2模版过滤器过滤器是通过管道符号(|)进行使用的,例如:{{ name|length }},将返回name的长度。过滤器相当于是一个函数,把当前的变量传入到过滤器中,然后过滤器根据自己的功能,再返回相应的值,之后再将结果渲染到页面中。Jinja2中内置了许多过滤器,在这里可以看到所有的过滤器。abs(value):返回一个数值的绝对值。default(value,defaul...
2020-04-12 22:14:15
468
原创 Flask框架的学习——02—(构造URL(url_for)、指定HTTP方法、页面跳转和重定向、关于响应、模板文件参数传递、不同数据类型模板传参)
1、构造URL(url_for)一般我们通过一个URL就可以执行到某一个函数。如果反过来,我们知道一个函数,如何去获得这个URL呢?url_for函数就可以帮我们实现这个功能。url_for()函数接收两个及以上的参数,他接收函数名作为第一个参数,接收对应URL规则的命名参数,如果还出现其他的参数,则会添加到URL的后面作为查询参数。通过构建URL的方式而选择直接在代码中拼URL的原因有两点...
2020-04-10 18:08:27
1855
原创 Flask框架的学习——01—(虚拟环境、管理开发环境、Flask介绍、设置Flask为DEBUG模式、Flask配置文件、URL与视图)
虚拟环境之前我们的学习,所有的第三方包安装都是直接通过pip install xx的方式进行安装的,这样安装会将那个包安装到你的系统级的Python环境中。但是这样有一个问题,就是如果你现在用Django 1.10.x写了个网站,然后你的领导跟你说,之前有一个旧项目是用Django 0.9开发的,让你来维护,但是Django 1.10不再兼容Django 0.9的一些语法了。这时候就会碰到一个问...
2020-04-07 21:28:07
548
原创 电商数据可视化分析
# -*- encoding: utf-8 -*-"""@File : homework_6_电商数据可视化分析.py@Time : 2019/9/24 10:31@Author : chen"""# 可以打开下面的网页,看各种图形的源码# https://plot.ly/python/import pandas as pdimport numpy as n...
2020-04-02 16:26:42
1524
原创 Web安全攻防的学习——09—(XSS攻击方法:16种主要攻击类型和常见的使用类型)
1、XSS攻击实验环境介绍地址:https://xss-quiz.int21h.jp/探测XSS过程1.构造一个不会被识别为恶意代码的字符串提交到页面中2.使用浏览器审查工具进行代码审查,寻找构造的字符串是否在页面中显示1.1 闭合文本标签利用XSS简单的payload<script>alert(document.domain);</script>...
2020-04-02 16:21:35
803
原创 Vue前端框架的学习——06—(匹配404错误、嵌套路由、编程式导航、命名路由、命名视图、重定向和别名、node环境配置和npm、vue-cli的使用)
1、匹配404错误:在路由规则中,* 代表的是任意字符。所以只要在路由的最后添加一个路由,那么以后没有匹配到的url都会被导入到这个视图中。<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content=...
2020-04-01 17:08:12
316
原创 Vue前端框架的学习——05—(过滤器、图书管理系统实例、Vue-Router、基本使用、解释说明、动态路由)
1、过滤器过滤器就是数据在真正渲染到页面中的时候,可以使用这个过滤器进行一些处理,把最终处理的结果渲染到网页中。过滤器使用:过滤器可以用在两个地方:双花括号插值**和v-bind表达式 (后者从2.1.0+开始支持)。过滤器应该被添加在JavaScript表达式的尾部,由“管道”符号指示:<!-- 在双花括号中 -->{{ message|capitalize }}<...
2020-03-30 16:44:59
388
原创 Vue前端框架的学习——04—(给自定义组件添加属性、单一根元素、子组件事件和传递事件到父组件、自定义组件v-model、插槽、生命周期函数)
1、给组件添加属性像原始的html元素都有自己的一些属性,而我们自己创建的组件,也可以通过prop来添加自己的属性。这样别人在使用你创建的组件的时候就可以传递不同的参数了。<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="vi...
2020-03-26 19:02:55
987
原创 Vue前端框架的学习——03—(视图更新注意事项、事件绑定、计算属性的set和get、监听属性、表单输入绑定、修饰符、自定义组件)
1、视图更新注意事项直接修改数组中的某个值是不会出发视图更新的。比如:this.books[0] = ‘Python’;这种情况应该改成用splice或者是用Vue.set方法来实现:Vue.set(this.books,0,‘Python’);如果动态的给对象添加属性,也不会触发视图更新。只能通过Vue.set来添加。比如: <div id="app"> ...
2020-03-23 10:52:39
416
原创 Vue前端框架的学习——02—(属性绑定Class和Style、使用JavaScript表达式、条件判断、v-show和v-if、触发视图更新)
1、属性绑定Class和Style在绑定class或者style的时候,可以通过以下方式来实现。绑定Class通过数组的方式来实现<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="wi...
2020-03-20 20:03:51
928
原创 Vue前端框架的学习——01—(VSCode插件、Vue介绍、Vue安装、Vue模板语法)
1、Vue介绍VSCode插件安装后面开发Vue项目,使用.vue的单文件开发,就需要一些插件来帮我们识别.vue文件。插件安装在Extension中,点开即可看到一个搜索按钮,可以输入关键字搜索自己想要的插件。VScode快捷键:https://segmentfault.com/a/1190000007688656这里我们开发Vue推荐的几个插件:jshint:js代码规范检查。B...
2020-03-17 19:52:48
2460
原创 Git项目的学习——03—(rebase的使用、多人协同开发工作流:Git Flow的使用流程、提测上线(预发布)、Git补充知识:配置文件、免密登录、Git忽略文件)(重点)
1、rebaserebase可以保持提交记录简洁,不分叉。创建新文件touch 文件名.文件类型例:touch 1.py创建新文件夹mkdir 文件夹名称清屏快捷键ctrl+L修改完成,检测效果如下:2、多人协同开发工作流:Git Flow2.1 创建项目&邀请成员协同开发时,需要所有成员都可以对同一个项目进行操作,需要邀请成员并赋予权限,否则无法开...
2020-03-16 19:41:51
661
原创 Git项目的学习——02—(Git分支、基于分支修复线上bug、GitHub的使用:家中和公司代码同步的应用、解决忘记提交代码情况)
1、Git分支分支可以给使用者提供多个环境,意味着你可以把你的工作从开发主线上分离开来,以免影响开发主线。第四阶段:商城&紧急修复bug紧急修复线上bug的思路:当C3版本软件开始扩展新功能的时候产生C4版本,但是此时C4版本出现了新的bug,即C5,C5这条分支用于修复新出现的bug,然后将两条分支:修复bug的分支C5与正常上线的软件版本C6合并成修复完成的软件版本C7.基...
2020-03-13 22:18:52
500
原创 Web安全攻防的学习——08—(绕过SQL注入、XSS跨站脚本分类、利用cookie会话劫持、XSS窜改网页链接)
1、绕过SQL注入绕过去除注释符的SQL注入注释符的作用:用于标记某段代码的作用,起到对代码功能的说明作用。但是注释掉的内容不会被执行。Mysql中的注释符:(python中的语句规则)1.单行注释: --+ 或 --空格 或 #2.多行注释: /* 多行注释内容 */对于正常的SQL语句中,注释符起到说明作用的功能。但是对于在利用SQL注入漏洞过程中,注释符起到闭合 单引号、多单...
2020-03-12 11:12:09
856
原创 Git项目的学习——01—(Git实战、Git学习、Git三大区域)
1、Git实战什么是GitGit是一个分布式的版本控制软件。软件,类似于QQ、office等安装到电脑上才能使用的工具;版本控制,类似于毕业论文、写文案、视频剪辑等,需要反复修改和保留原历史数据;– 分布式– 文件夹拷贝– 本地版本控制– 集中式版本控制– 分布式版本控制安装Git网上有安装教程,下载链接如下:Git for Windows2、 Git学习第一阶段:...
2020-03-10 17:35:46
269
1
原创 项目前导知识的学习—-01—(Redis内存数据库、Redis、redis常用五大数据类型:string/list/hash/set/Zset、Python操作Redis、Redis主从配置)
1、Redis内存数据库背景随着互联网+大数据时代的来临,传统的关系型数据库已经不能满足中大型网站日益增长的访问量和数据量。这个时候就需要一种能够快速存取数据的组件来缓解数据库服务I/O的压力,来解决系统性能上的瓶颈。数据库的发展历史1.在互联网+大数据时代来临之前,企业的一些内部信息管理系统,一个单个数据库实例就能满足系统的需求单数据库实例2.随着系统访问用户的增多,数据量的...
2020-03-09 18:40:28
612
原创 Web安全攻防的学习——07—(MySQL注入读写文件、HTTP头中的SQL注入、HTTP User-Agent注入、HTTP Referer注入、cookie注入)(重点)
1、MySQL注入读写文件MySQL数据库在渗透过程中能够使用的功能还是比较多的,除了读取数据之外,还可以进行 对文件进行读写(前提是权限足够)读取前提:1.用户权限足够高,尽量具有root权限2.secure_file_priv不为null需要人为设置secure_file_priv的默认值保存文件后重启Phpstudy2018,再验证读取文件内容http://12...
2020-03-04 21:10:36
621
原创 Web安全攻防的学习——06—(盲注介绍、GET基于时间的盲注、GET基于Boolean的盲注、POST基于错误的注入、POST基于时间的盲注、SQL注入绕过手段)(重点)
1、盲注介绍Blind SQL(盲注)是注入攻击的其中一种,向数据库发生true或false这样的问题,并根据应用程 序返回的信息判断结果。这种攻击的出现是因为应用程序配置为只显示常规错误,但并没有解决SQL注入存在的代码问题盲注种类1.布尔类型2.时间的盲注GET基于时间的盲注if(ascii(substr(database(),1,1))=115,1,sleep(3)) # ...
2020-03-02 23:28:32
591
原创 Web安全攻防的学习——05—(sqlmap检索DBMS信息、sqlmap暴力破解数据、SQL注入原理、SQL注入过程、get基于报错的SQL注入、get基于报错的SQL注入利用)(重点)
1、sqlmap检索DBMS信息sqlmap检索DBMS banner获取后端数据库banner信息参数 --banner或者-bsqlmap检索DBMS当前数据库获取当前数据库名参数 --current-dbsqlmap检索DBMS当前主机名获取主机名参数 --hostnamesqlmap检索DBMS用户信息sqlmap探测当前用DBA探测当前用户是否是...
2020-02-29 21:22:28
2045
原创 Web安全攻防的学习——04—(Sqlmap性能优化、在kali中搭建Sqli-labs、虚拟机使用本机靶场、sqlmap自定义检测参数、sqlmap注入参数、sqlmap注入技术参数)(重要)
1、Sqlmap性能优化sqlmap设置持久HTTP连接优势:长连接避免浪费重复连接的网络开销 缺点:大量的长连接占用服务器资源sqlmap中可以设置连接为持久连接。HTTP报文中设置connection:keep-alive但是–keep-alive这个参数和–p’roxy这个参数相冲突,不能在一起使用sqlmap设置不接收HTTP Bod参数 --null-connec...
2020-02-27 22:53:49
991
原创 Web安全攻防的学习——03—(sqlmap注入介绍、Sqlmap获取目标、sqlmap设置请求参数、避免错误请求过多而被屏蔽)(重点)
1、sqlmap注入介绍所谓SQL注入,就是通过把SQL命令插入到web表单提交或输入域名或页面请求的查询字符串, 最终达到欺骗服务器执行恶意的SQL命令。具体来说,它是利用现有应用程序,将SQL命令注入 到后台数据库引擎执行的能力,它可以通过在web表单中输入SQL语句得到一个存在安全漏洞 的网站上的数据库,而不是按照设计者意图去执行SQL语句。SQL注入发生未知HTTP数据包中任意位置s...
2020-02-25 22:41:05
1352
原创 QT界面控件和窗口上添加ico等图标,标志,并打包发布软件exe文件
使用的是VS2013+QT5.4开发界面1、在创建好的工程项目中选择Resource Files下的 xxx.qrc文件,双击qrc文件出现一个对话框
2020-02-24 18:35:48
1543
原创 Web安全攻防的学习——02—(真实IP地址收集、shodan介绍、shodan安装和命令、检测蜜罐保护、Python-shodan使用、sqlmap介绍、渗透测试环境安装配置)
1、真实IP地址收集CDN介绍CDN的全称是Content Delivery Network,即内容分发网络网址:https://www.cnblogs.com/xinxiucan/p/7832368.html判断CDN存在1.通过ping来判断是否存在CDN https://blog.csdn.net/zcmuczx/article/details/793892382.通过设置代理...
2020-02-24 18:02:49
2364
1
Django项目.pdf
2020-09-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅