了解Flask路由装饰器实现机制,实现类似消息驱动的装饰器

在Flask项目中,添加新的路由Flask提供了两种方式,一种是通过app.add_url_rule()这个方法往Flask项目中插入路由。另外一种就是通过Flask提供的@route装饰器给对应的方法加上装装饰器。第二种方法由于比较简单直观,是我在项目中最常用的注册路由的方...

Flask扩展插件,使用Flask-Mail管理项目的邮件发送

博客已经有段时间没更新了,有很多好的想法只是开了个简单的头就搁置了。也不想给自己找借口,就是最近有点松懈了。写博客是一个持之以恒的过程,没有学习哪来进步?总归坚持才是最难做的事情,能做到稳定输出的个人公众号和博客都是我敬佩的对象。希望我...

使用Flask-Limiter插件完成Flask的路由访问频率限制(Redis实现)

手上有一个小项目,虽然只有几百个用户在使用,按道理说这种小型项目的话我的小水管可以轻松hold。但是结果就是我的服务器总是某名奇妙的卡住,发送的post请求一直堵塞,数据库的查询也异常缓慢,从日志里找了一下原因发现是自动化端的脚本写的着实有点鸡...

基于Flask-Login的实现Flask接口级别的会员权限验证保护

在Flask中有Flask-Login这个插件可以帮我们实现用户登录权限管理管理,但是也仅仅是对登录和未登录做了区分校验。对于一个成熟的web系统来说不但有会员系统,还应该对会员的等级做出详细的划分,权限低的会员无法使用权限高的接口,我把这个成为会员的权限...

Flask验证码的完善,使用redis实现验证码的超时过期和验证失效

验证码的总是与网站安全挂钩,所以我这段时间一直在研究如何用Flask实现最基础的图形验证码。之前已经发了篇文章:Flask验证码的使用,运用PIL库生成简单的图形验证码。该文章实现了简单的图形验证码生成和验证,但是同样留下了很多致命的问题。主要是因为...

通过爬取免费代理网站构建私有网页代理池-爬虫的编写(一)

IP访问频率限制是网页中最常用的反爬虫手段,当爬虫的IP被目标服务器ban掉之后,我们的爬虫代码是没办法继续正常执行的。解决这个问题的方法也很简单就是用网页代理,但是现在免费的网页代理不好找,收费的又太贵。可是日常又需要,我就想着通过爬取免费代...

在Centos中安装并使用Pyenv,一个强大的Python版本管理工具

Python发展到现在已经很强大了,各种开发相信大家都可以随心应对。但是唯独虚拟环境让人觉得很头大,不同的项目使用到的库版本不同要求我们为每一个项目创建其独一无二的环境。如果到现在你开发的项目都是基于原生pip环境开发的,那么我只能说你是个狼人。...

SQL-Alchemy Column参数详解,文档源基于源代码Doc

上篇文章简单的了解了一下SQL-Alchemy的Column类,这次趁着热度把Column的参数做一个简单的介绍。就像群里的大神说的那样:无论你解决不解决问题它一直在那里,你现在可以绕过去,但是学到最后这些问题始终要再次相遇,索性不如开始的时候就搞懂它。 Colum...

SQL-Alchemy Column的default参数问题,如何实现Column初始化赋值

SQL-Alchemy是基于Python的一个对象关系映射框架。基于SQL-Alchemy我们可以在不编写原生SQL的前提下通过框架生成我们想要的数据表。基于数据库编写的业务逻辑也同样不需要编写原生SQL,ORM框架会根据根据编写的Python代码对SQL进行自动生成,这极大的简化...

Flask-SQLAlchemy通过Class获取定义的表结构原理浅析,什么是元类?

问题来源 在Flask项目中,通过SQLAlchemy定义好了模型类,但是执行SQLAlchemy的create_all方法后数据表并没有在数据库中创建。这个问题对于新手来说肯定遇见过,通过网上查询可以得知我们定义的模型类必须通过import引入到项目当中去,只用这样SQLAlchemy...

Top