python
文章平均质量分 75
javascript_good
这个作者很懒,什么都没留下…
展开
-
python使用SMTP发送邮件
要把图片嵌入到邮件正文中,我们只需按照发送附件的方式,先把邮件作为附件添加进去,然后,在HTML中通过引用src="cid:0"就可以把附件作为图片嵌入了。你看到的收件人的名字很可能不是我们传入的管理员,因为很多邮件服务商在显示邮件时,会把收件人名字自动替换为用户注册的名字,但是其他收件人名字的显示不受影响。这就是经过Header对象编码的文本,包含utf-8编码信息和Base64编码的文本。SMTP是发送邮件的协议,Python内置对SMTP的支持,可以发送纯文本邮件、HTML邮件以及带附件的邮件。原创 2023-09-18 21:14:34 · 384 阅读 · 0 评论 -
FLASK中的鉴权的插件Flask-HTTPAuth
在 Web 应用中,我们经常需要保护我们的 api,以避免非法访问。比如,只允许登录成功的用户发表评论等。Flask-HTTPAuth 扩展可以很好地对 HTTP 的请求进行认证,不依赖于 Cookie 和 Session。本文主要介绍两种认证的方式:基于密码和基于令牌 (token)。原创 2023-09-17 22:21:02 · 668 阅读 · 0 评论 -
flask 插件 Flask-RESTful
我们定义了一个 HelloWorld 的类,该类继承自 Resource,在类里面,我们定义了 get 方法,该方法跟 HTTP 请求中的 GET 方法对应。接着,我们使用 add_resource() 方法添加资源,该方法的第 1 个参数就是我们定义的类,第 2 个参数是 URL 路由。获取表单内容使用 parse_args() 方法,该方法返回一个字典,字典的 key 就是表单的字段。Flask-RESTful 也支持路由带参数的请求,跟 Flask 的实现是类似的,看下面这个例子。原创 2023-09-15 10:47:22 · 303 阅读 · 0 评论 -
页面解析之结构化数据
HTML、XMLXPathCSS选择器正则表达式JSONJSONPath转化成Python类型进行操作(json类)XML转化成Python类型(xmltodict)XPathCSS选择器正则表达式其他(js、文本、电话号码、邮箱地址)正则表达式。原创 2023-09-13 10:14:30 · 146 阅读 · 0 评论 -
正则表达式
正则表达式,用标准正则解析,一般会把HTML当做普通文本,用指定格式匹配当相关文本,适合小片段文本,或者某一串字符(比如电话号码、邮箱账户),或者HTML包含javascript的代码,无法用CSS选择器或者XPath正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个"规则字符串",这个"规则字符串"用来表达对字符串的一种过滤逻辑。原创 2023-09-12 11:25:55 · 376 阅读 · 1 评论 -
python3.9的输出操作
通常,你需要更多地控制输出的格式,而不仅仅是打印空格分隔的值。有几种格式化输出的方法。str() 函数是用于返回人类可读的值的表示,而 repr() 是用于生成解释器可读的表示(如果没有等效的语法,则会强制执行 SyntaxError)对于没有人类可读性的表示的对象, str() 将返回和 repr() 一样的值。很多值使用任一函数都具有相同的表示,比如数字或类似列表和字典的结构。特殊的是字符串有两个不同的表示。原创 2023-09-08 09:16:35 · 130 阅读 · 0 评论 -
python的迭代器和生成器
1、迭代器简介迭代器对象可以在 for 循环中使用:如:x = [2, 4, 6] for n in x: print n输出:246其好处是不需要对下标进行迭代,但是有些情况下,我们既希望获得下标,也希望获得对应的值,那么可以将迭代器传给 enumerate 函数,这样每次迭代都会返回一组 (index, value) 组成的元组:如:x = [2, 4, 6] for i, n in enumerate(x): print 'pos', i, 'is',原创 2023-09-07 17:48:12 · 253 阅读 · 0 评论 -
python容器模块Collections
Python附带一个模块,它包含许多容器数据类型,名字叫作collections。原创 2023-09-07 11:33:04 · 278 阅读 · 0 评论 -
flask中的操作数据库的插件Flask-SQLAlchemy
Web 开发中,一个重要的组成部分便是数据库了。Web 程序中最常用的莫过于关系型数据库了,也称 SQL 数据库。另外,文档数据库(如 mongodb)、键值对数据库(如 redis)近几年也逐渐在 web 开发中流行起来,我们习惯把这两种数据库称为 NoSQL 数据库。大多数的关系型数据库引擎(比如 MySQL、Postgres 和 SQLite)都有对应的 Python 包。原创 2023-09-05 17:00:39 · 842 阅读 · 0 评论 -
flask使用Flask-Mail实现邮件发送
Flask-Mail可以实现邮件的发送,并且可以和 Flask 集成,让我们更方便地实现此功能。原创 2023-09-05 11:13:45 · 911 阅读 · 0 评论 -
Django REST framework中的序列化Serializers
序列化器允许将诸如查询集和模型实例之类的复杂数据转换为原生 Python 数据类型,然后可以将它们轻松地呈现为 JSON,XML 或其他内容类型。序列化器还提供反序列化,在首次验证传入数据之后,可以将解析的数据转换回复杂类型。简单来说,服务器通过api 返回数据(json格式),把非json格式转换为json 就是序列化的过程浏览器提交给服务器端的数据,服务端将json 格式转换给非json存储到数据库,就是反序列化。原创 2023-09-04 16:49:00 · 755 阅读 · 0 评论 -
python实现的一些方法,可以直接拿来用的那种
很多时候我们需要批量生成日期,方法有很多,这里分享两段代码。原创 2023-09-01 16:24:53 · 2395 阅读 · 0 评论 -
Django REST framework实现api接口
drf 是Django REST framework的简称,drf 是基于django的一个api 接口实现框架,REST是接口设计的一种风格。原创 2023-08-23 17:32:26 · 1436 阅读 · 0 评论 -
python的上下文管理器
上下文管理器允许你在有需要的时候,精确地分配和释放资源。使用上下文管理器最广泛的案例就是with语句了。想象下你有两个需要结对执行的相关操作,然后还要在它们中间放置一段代码。上下文管理器就是专门让你做这种事情的。上面这段代码打开了一个文件,往里面写入了一些数据,然后关闭该文件。如果在往文件写数据时发生异常,它也会尝试去关闭文件。当与第一个例子对比时,我们可以看到,通过使用with,许多样板代码(boilerplate code)被消掉了。原创 2023-08-22 09:16:19 · 85 阅读 · 0 评论 -
python的异常处理
程序可以通过创建新的异常类来命名自己的异常(Python 类的更多内容请参见类)。异常通常应该继承Exception类,直接继承或者间接继承都可以。...>>> try:...')在此示例中,Exception默认的init()被覆盖了。新的行为简单地创建了value 属性。这将替换默认的创建args 属性的行为。异常类可以像其他类一样做任何事情,但是通常都会比较简单,只提供一些属性以允许异常处理程序获取错误相关的信息。原创 2023-08-21 16:37:30 · 102 阅读 · 0 评论 -
python 装饰器
不带参数的装饰器decorator装饰一个名字F(可能为函数名、也可能为类名)@decorator:则执行的是:F=decorator(F),直接使用F带参数的装饰器decorator装饰一个名字F(可能为函数名、也可能为类名)@decorator(args):则执行的是:F=decorator(args)(F),间接使用F1、利用装饰器可以实现单例模式:@Singletonclass A:pass。原创 2023-08-18 09:23:02 · 56 阅读 · 0 评论 -
django实现文件上传
在这个视图函数中如果是get 请求就展示上传的页面,如果是post 请求,就将获取到的文件对象在项目跟目录创建一个相同的文件名保存起来。通过 form.save() django 自动将文件存储到media目录下的city目录,并且把文件路径保存到数据库。将上传的图片保存到static目录,并且在数据库保存文件存储的路径。提交页面时: 用户输入数据 + 文件(输入不能为空,报错)先写一个上传的页面 upload_file.html。models.py 重新创建一个表来存储文件路径。原创 2023-08-16 11:40:59 · 3048 阅读 · 0 评论 -
django中使用ajax发送请求
1、ajax简单介绍浏览器向网站发送请求时 是以URL和表单的形式提交的post 或get 请求,特点是:页面刷新除此之外,也可以基于ajax向后台发送请求(异步)依赖jQuery编写ajax代码$.ajax( { url: "发送的地址" , type: "post", data:{ n1:123, n2:456 }, success:funct原创 2023-08-15 11:45:02 · 1330 阅读 · 0 评论 -
登录界面中图片验证码的生成和校验
1、安装pillow2、下载字体比如:Monaco.ttf3、实现生成验证码的方法该方法返回一个img ,可以把这个img图片保存到内存中,也可以以文件形式保存到磁盘,还返回了验证码的文字。原创 2023-08-11 11:11:11 · 441 阅读 · 0 评论 -
django实现登录和登录的鉴权
在models.py 中定义admin表,为了简单,表里只有用户名和密码还有默认加的id 三个字段执行创建表的语句然后自己手动插入一些用户。原创 2023-08-10 16:48:27 · 681 阅读 · 0 评论 -
python常用的函数和知识点
三元运算符是 if-else 语句的简写。语法是value_if_true if condition else value_if_false。三元运算符是一行代码,可以替代多行 if-else 语句,使你的代码更加简洁。上面的代码通过检查“a”是否大于“b”,如果为真则返回“a”,如果为假则返回“b”。原创 2023-08-10 11:09:47 · 217 阅读 · 0 评论 -
django中使用bootstrap-datepicker时间插件
Bootstrap Datepicker是一款基 于Bootstrap框架的日期选择控件,可以方便地在Web应用中添加可交互的日期选择功能。Bootstrap Datepicker拥有丰富的选项和API,支持多种日期格式,可以自定义样式并支持各种语言。原创 2023-08-09 11:41:33 · 1819 阅读 · 0 评论 -
django处理分页
当数据库量比较大的时候一定要分页查询的在django中操作数据库进行分页。原创 2023-08-07 11:28:10 · 1145 阅读 · 0 评论 -
django使用mysql数据库
Django开 发操作数据库比使用pymysql操作更简单,内部提供了ORM框架。下面是pymysql 和orm操作数据库的示意图,pymysql就是mysql的驱动,代码直接操作pymysql ,需要自己写增删改查的语句django 就是也可以使用pymysql、mysqlclient作为驱动,但是目前对mysqlclient的支持更好,在驱动的基础只上封装了orm框架,不用直接去写sql,是操作更简单了。原创 2023-08-02 17:57:46 · 1980 阅读 · 0 评论 -
Django使用用户列表的展示和添加
接着上一篇:https://blog.csdn.net/javascript_good/article/details/132027702来实现用户表的查询和添加。原创 2023-08-01 17:42:11 · 1634 阅读 · 0 评论 -
好用的python自动化脚本
该脚本使用流行的是 Pillow 模块来处理图片,安装Pillow。原创 2023-08-01 11:20:07 · 209 阅读 · 0 评论 -
django实现部门表的增删改查界面
如果是get请求就返回depart_add.html部门添加的页面,如果是添加了数据,post提交数据,就先获取post提交过来的部门名称title,保存数据到数据库,最后在返回到部门列表。views.py 如果是get 请求根据nid获取数据库的对象,对象包含id 和title,将title传给编辑页面,显示当前编辑的是什么数据。通过在get路径后面传nid 来表示要删除的id,这个值是在depart_list.html中,当点击删除的时候带出来的。在写depart_add.html,原创 2023-07-31 18:43:15 · 1037 阅读 · 1 评论 -
django模板继承和组件了解
什么时候需要用到模板呢,比如我们在开发的页面的导航栏,你点不同的功能页面这个导航栏都是一样的,如果每个页面都要加上这个导航条会写重复代码,而且如果导航条有变化,每个页面都要修改,这个是很不方便的,所以我们可以使用模板,把公共的提取出来放到一个模板文件中,其它页面来继承。比如下面的模板文件为layout.html比如要引入公共的插件,在模板文件中引入。原创 2023-07-28 18:52:05 · 1130 阅读 · 0 评论 -
Django模板语法和请求
创建的django项目下会有一个seeetings.py的文件。原创 2023-07-27 08:43:14 · 1375 阅读 · 0 评论 -
Django快速上手
Django 框架最初的诞生,主要是用来开发和管理 Lawrence Publishing Group(劳伦斯出版集团)旗下新闻网站的一款软件,是一款属于 CMS(Content Management System,内容管理系统)类的软件,并于 2005 年 7 月取得了 BSD 许可证下的发布权限。之后,经过开发人员的不断努力,Django 1.0 版于 2008 年 9 月正式发布。原创 2023-07-26 09:32:42 · 857 阅读 · 0 评论 -
flask结合mysql实现用户的添加和获取
已经安装好数据库,并且创建数据库和表。原创 2023-07-25 10:30:36 · 800 阅读 · 0 评论 -
python连接mysql数据库
在进行新增、删除、修改时,一定要记得commit, 不然数据库没有数据在查询时,不需要commit, 执行fetchall 或fetchone对于SQL语句不要用python的字符串格式化进行拼接,会被SQL注入,一定要用execute+ 参数。原创 2023-07-24 18:19:44 · 70 阅读 · 0 评论 -
python匿名函数Lambda
Lambda函数也被称为匿名(没有名称)函数,它直接接受参数的数量以及使用该参数执行的条件或操作,该参数以冒号分隔,并返回最终结果。为了在大型代码库上编写代码时执行一项小任务,或者在函数中执行一项小任务,便在正常过程中使用lambda函数。argument_list是参数列表,它的结构与Python中函数(function)的参数列表是一样的expression是一个关于参数的表达式,表达式中出现的参数需要在argument_list中有定义,并且表达式只能是单行的。原创 2023-07-18 17:07:36 · 1288 阅读 · 0 评论 -
flask实现get和post请求
在项目根目录创建app.py在跟目录创建一个templates目录,在该目录下创建regist.html文件</</</</</</</</标签包裹要提交的数据的标签在form里面的一些标签: input/select/textareal一定要写name 属性运行效果:get 请求的参数在url中显示可以看到后台有收到传入的参数。原创 2023-07-14 18:25:22 · 4180 阅读 · 0 评论 -
使用flask开启一个简单的应用
Flask是非常流行的 Python Web框架,它能如此流行,原因主要有如下几点:。有非常齐全的官方文档,上手非常方便。。有非常好的扩展机制和第三方扩展环境,.工作中常见的软件都会有对应的扩展。自己动手实现扩展也很容易。。社区活跃度非常高。。微框架的形式给开发者更大的选择空间。.Pocoo团队出品,Flask和相关依赖(Jinja2、Werkzeug )的设计很优秀。比如使用装饰器配置路由、用Blueprint实现模块化、请求/应用上下文等。原创 2023-07-14 11:44:19 · 1517 阅读 · 0 评论 -
用python合并execl做统计分析
背景: 我们有项目问题记录的表格,每一个项目都会反馈来一个execl表格,表格的格式都是统一的,我需要定期把这些项目上反馈来的表格进行统计,但是表格非常多,我要每个都统计出来在来相加,这样操作很麻烦,所以我想有没有一个方法可以把所有的execl 都合并成为一个execl ,然后再去做统计分析。这样会节省不少时间。最后我发现可以用python 来做合并execl的事情。原创 2023-07-13 18:33:16 · 193 阅读 · 0 评论 -
python的浅拷贝和深拷贝
python中的拷贝有以下三种变量的赋值操作只是形成两个变量,实际上还是指向同一个对象浅拷贝Python拷贝一般都是浅拷贝,拷贝时,对象包含的子对象内容不拷贝,因此,源对象与拷贝对象会引用同一个子对象深拷贝使用copy模块的deepcopy函数.递归拷贝对象中包含的子对象,源对像和拷贝对象所有的子对象也不相同。原创 2023-07-13 10:57:14 · 193 阅读 · 0 评论 -
python的字符串操作
三个字符串的的内存地址是一样的。驻留机制的几种情况(交互模式)·字符串的长度为0或1时·符合标识符的字符串·字符串只在编译时进行驻留,而非运行时·[-5,256]之间的整数数字· sys中的intern方法强制2个字符串指向同一个对象.PyCharm对字符串进行了优化处理字符串驻留机制的优缺点:当需要值相同的字符串时,可以直接从字符串池里拿来使用,避免频繁的创建和销毁,提升效率和节约内存,因此拼接字符串和修改字符串是会比较影响性能的。原创 2023-07-12 10:32:06 · 76 阅读 · 0 评论 -
python函数的参数
函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。自定义函数的规则:函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()。任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。函数内容以冒号起始,并且缩进。return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None。语法。原创 2023-07-11 10:18:45 · 210 阅读 · 0 评论 -
python处理yaml、ini和execl文件
YAML 是一个被广泛使用的数据序列化和配置语言,后缀可以为yaml或yml, 支持#注释,通过缩进表示层级,区分大小写,读取出来之后是一个字典列表name : 晴雯。原创 2023-07-07 11:55:17 · 239 阅读 · 0 评论