- 博客(25)
- 收藏
- 关注
原创 查找python项目依赖,生成requirements.txt
查找python第三方包,并整理到requirements.txt文件中可以使用python模块pipreqs,可以自动根据源码生成 requirements.txt,查询项目中的三方包和包的版本。先安装pipreqs 包:pip install pipreqs 设置保存位置:会自动生成requirements.txt文件到指定目录下 pipreqs 路径例:pipreqs /home/project/项目名称结果展示:安装 requirements.txt 中的依赖pi
2021-07-13 15:04:52
205
原创 python中把压缩的Log解压,并查询其中的某个值出现的次数
python中把压缩log解压并查询其中的某个值import osimport uuidimport zipfilefrom flask import request, BlueprintfileLog = Blueprint('fileLog', __name__, url_prefix="/api/file")BASE_DIR = os.path.dirname(os.path.abspath(__file__))def unzip_file(file_path, target_p
2021-04-23 18:37:33
230
1
原创 celery异步发短信(容联云)
一,在python中,创建一个导包文件,例如:celery_task二,再创建一个py文件,例如:mian.py三,在py文件中添加基本配置例:import osimport sysfrom celery import Celery#执行celery命令时,需要进入CELERY_BASEDIR目录执行#elery项目中的所有导包地址,都是已CELERY_BASE_DIR未基准设定CELERY_BASE_DIR = os.path.dirname(os.path.abspath(__
2021-01-18 11:24:17
164
原创 vue基础
vue的安装安装node.js安装npm:npm install -g cnpm --registry=https://registry.npm.taobao.org使用cnpm安装vue:cnpm install vue -g安装vue命令行工具:cnpm install vue-cli -g安装vue-devtools调试工具:创建vue脚手架:vue init webpack myprojectvue init webpack myprojectcd myproject // 进入
2021-01-05 09:09:30
142
原创 Django + Docker完成es全文检锁
使用Docker安装Elasticsearch1.获取Elasticsearch-ik镜像#从仓库拉取镜像$ sudo docker image pull delron/elasticsearch-ik:2.4.6-1.0#解压教学资料中本地镜像$ sudo docker load -i elasticsearch-ik-2.4.6_docker.tar2.配置Elasticsearch-ik将教学资料中的elasticsearc-2.4.6目录拷贝到home目录下。修改/home/pyth
2021-01-02 20:17:37
195
原创 Django实现MySQL读写分离
Django实现MySQL读写分离1. 增加slave数据库的配置DATABASES = { 'default': { # 写(主机) 'ENGINE': 'django.db.backends.mysql', # 数据库引擎 'HOST': '192.168.103.158', # 数据库主机 'PORT': 3306, # 数据库端口 'USER': 'itcast', # 数据库用户名 'PASSWORD':
2020-12-30 17:10:42
72
原创 MySQL主从同步
MySQL主从同步1. 主从同步机制1.主从同步介绍和优点在多台数据服务器中,分为主服务器和从服务器。一台主服务器对应多台从服务器。主服务器只负责写入数据,从服务器只负责同步主服务器的数据,并让外部程序读取数据。主服务器写入数据后,即刻将写入数据的命令发送给从服务器,从而使得主从数据同步。应用程序可以随机读取某一台从服务器的数据,这样就可以分摊读取数据的压力。当从服务器不能工作时,整个系统将不受影响当主服务器不能工作时,可以方便地从从服务器选举一台来当主服务器使
2020-12-30 17:07:26
115
原创 Nginx负载均衡
负载均衡负载均衡是什么?我们之前使用proxy_pass的方式实现了nginx代理请求到后端的效果,随着我们的网站访问量越来越多,一个后端就不现实了,那么接下来我们应该如果在访问量日渐增大的情况下,满足线上业务的稳定呢?解决方法就是:负载均衡负载均衡简单说来人多力量大,打群架。nginx upstream模块官方资料网址:http://www.nginx.cn/doc/standard/httpupstream.html官方的代理属性很多,我们主要介绍upstream和ip_hash属性官方
2020-12-29 11:53:59
96
原创 Nginx反向代理
反向代理代理是什么?简单来说,我找一个中间人,代替我去做一件事情,只要他给我结果就可以。代理一般分为两种:正向代理、反向代理区别:从用途上来讲:正向代理-为局域网客户端向外访问Internet服务。可以使用缓冲特性减少网络使用率。反向代理-为局域网服务器向外提供Internet服务。可以使用负载平衡提高客户访问量。还可以基于高级URL策略和管理技术对服务进行高质量管控。从安全性来讲:正向代理-必须采取安全措施确保内网客户端通过它访问外部网站。隐藏客户端的身份反向代理-对外提供
2020-12-29 11:45:31
190
1
转载 Django--JWT
JWT在用户注册或登录后,我们想记录用户的登录状态,或者为用户创建身份认证的凭证。我们不再使用Session认证机制,而使用Json Web Token认证机制。什么是JWTJson web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519).该token被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO)场景。JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,也可以增加一些额外
2020-12-22 20:21:14
110
原创 Django--支付宝(沙箱)
django中支付宝(沙箱)简单使用python=3.6.8django=2.1.8python-alipay-sdk=2.0.1非官方支付宝 Python SDK: https://github.com/fzlee/alipay/blob/master/README.zh-hans.md#alipay.trade.page.pay沙箱环境配置1、在支付宝开放平台---->开发者中心—>开发服务---->沙箱2、RSA2密钥生成并上传参考官方地址:https://o
2020-12-22 20:17:12
302
原创 django异步发邮件
Django-Celery-Redis异步发邮件python == 3.7.6django == 2.1.8celery == 4.4.7redis == 3.5.3eventlet == 0.26.1什么是celeryCelery是一个功能完备即插即用的任务队列。它使得我们不需要考虑复杂的问题,使用非常简单。celery适用异步处理问题,当发送邮件、或者文件上传, 图像处理等等一些比较耗时的操作,我们可将其异步执行,这样用户不需要等待很久,提高用户体验。 celery的特点是:简单,
2020-12-22 19:05:01
519
原创 django中间件
django 中间件Django中的中间件是一个轻量级、底层的插件系统,可以介入Django的请求和响应处理过程,修改Django的输入或输出。中间件的设计为开发者提供了一种无侵入式的开发方式,增强了Django框架的健壮性。我们可以使用中间件,在Django处理视图的不同阶段对输入或输出进行干预。中间件一般使用的功能:视图能做的,中间件都能实现1,记录每个url的浏览量2,限流3,权限4,rbac 权限, url, user, 根据用户判断一下,有没有访问这个url的权限5,ip黑名单
2020-12-22 08:04:40
76
原创 RESTful风格
1.RESTful风格API1.1 什么是RESTfulREST与技术无关,代表的是一种软件架构风格(REST是Representational State Transfer的简称,中文翻译为“表征状态转移”)REST从资源的角度类审视整个网络,它将分布在网络中某个节点的资源通过URL进行标识所有的数据,不过是通过网络获取的还是操作(增删改查)的数据,都是资源,将一切数据视为资源是REST区别与其他架构风格的最本质属性对于REST这种面向资源的架构风格,有人提出一种全新的结构理念,即:面向资源架
2020-12-19 08:33:30
176
1
原创 DRF框架的基本使用
1.DRF初始化1.DRF框架的8个核心功能1.认证(用户登录校验用户名密码或者token是否合法)2.权限(根据不同的用户角色,可以操作不同的表)3.限流(限制接口访问速度)4.序列化(返回json)5.分页6.版本(接口版本号,用 v1/v2/v3) # api.example.com/v1/login # 只有用户名密码登录 # api.example.com/v2/login # 手机号,微信 登录7.过滤(username=zhangsan)8.排序(or
2020-12-16 19:42:20
627
原创 Django三种路径
1.python中的三种路径1.1 操作系统文件绝对路径django 静态文件查找, 模板查找(第一种)os.path# 去配置好的 文件夹 中查找指定的文件BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))STATIC_URL = '/static/'# /teach/shiyanlou_project/syl/apps/user/ # linux# E:\_000\XSX1.2 djan
2020-12-16 19:31:35
2824
原创 linux常用命令
1.linux常用命令1.1 系统命令runlevel # 查看当前的运行级别(5代表图形化界面)systemctl status sshd # 开启网络服务功能 stop # 关闭 restart # 重启 reload # 重载# 常见服务sshd # ssh服
2020-12-16 18:44:55
94
原创 django与vue的跨域
python高阶函数pring(高阶函数定义:一个函数把另一个函数作为参数传入map高阶函数(加工)map(函数,可迭代对象)把可迭代对象里的每一个元素放到函数里执行,最后输出在一个迭代器里。reduce高阶函数reduce(函数,可迭代对象)from functools import reduce把可迭代对象里的前两个元素放到函数里执行,把结果与第三个元素再放进去执行,最后得到一个值。阶乘,偶数和filter高阶函数filter(函数,可迭代对象) 过滤把可迭代对象里
2020-12-15 11:52:22
238
原创 python基础(数据类型及操作)
字符串的处理方法1,索引(也叫下标)通过下标找到相对应的元素。下标是从0开始的,如果从后往前是从-1开始的。2,切片变量名 [ 起始值:终止值:步长值 ]当 起始值 > 终止值时,步长为负,必须写。当 起始值 < 终止值时,步长为正,默认为1,可不写。特点:包头不包尾3,计算字符串的长度len ( 变量名 )在utf—8中,汉字占3个字节4,查看元素在字符串中的下标变量名 . find(元素)----如果没有这个元素,会报-1。变量名 . rfind(元素) ----从
2020-12-14 20:19:26
647
原创 新浪微博三方登录
三方登录一,新浪微博三方登录1,在用户登录时,可以使用第三方的程序登录,例如qq,微信,新浪微博等方式,可以提高登录的效率。这里使用的是微博的第三方登录。2,首先需要先到微博开放平台,申请一个开发者的应用。在登录后,选择网站那接口,申请应用,直接输入应用名称即可。3,应用里添加授权设置点击应用信息,点击高级信息,在点击右上角的编辑,添加授权回调页(也就是授权成功后跳转的页面),和取消授权回调页(也就是在授权时,取消后跳转的页面)4,到文档页获取授权认证跳转页面后,找到接口文档,在接口文档中
2020-12-08 17:51:07
2526
原创 Git远程仓库Github
滑块验证Vue滑块验证安装滑块验证包cnpm install vue-drag-verify --save1、在Login.vue页面导入<template><div> <!-- background以下为添加的样式,可以不写入 --> <drag-verify :width='width' :height='height'
2020-12-08 17:23:51
608
原创 Django数据库的简介及操作
正则匹配print(正则表达式用到的方法:match(‘正则表达式’,‘字符串’) 从头开始匹配 匹配第一个字符,如果错误会报错 1,匹配单字符 (一次只匹配一个字符) . 匹配任意字符 除了\n [] 匹配[]中列举的字符(可以写范围) \d 匹配数字 0-9 gigit \D 匹配非数字 \w 匹配单词字符 0-9 a-z A-Z _ word
2020-12-06 17:59:28
1781
原创 mysql数据库的简介及操作
mysql数据库的增删改查增全列插入数据insert into 表名 values(内容1)(内容2)部分列插入insert into 表名(列名) values (内容)删除物理删除(一旦删除,不会恢复)delete from 表名 where 条件(id=数字)逻辑删除(0代表显示,1代表删除)修改update 表名 set 列名=新值 where 条件(id=数字)查询查询所有数据:select * from 表名按条件查询:select * from 表名 wh
2020-12-02 09:02:59
692
原创 网络编程的四层协议
第二天print(网络编程四层协议应用层协议与网络相关的程序,通过网络与其他程序通信,使用的数据格式规范。比如浏览器向服务器发请求获取网页数据,此时发送的请求报文(皇室信件)就需要遵循HTTP协议(按HTTP协议的要求填写字段)。常见的应用层协议有:- HTTP(80端口),主要用于普通浏览。- HTTPS(443端口),HTTP协议的安全版本。- FTP(20和21端口),用于文件传输。- POP3(110端口),收邮件用。- SMTP(25端口),用来发送电子邮件。- SSH(2
2020-11-22 21:28:26
813
原创 浏览器常见的请求及状态码
捕获异常print(异常1,捕获异常:try:错误代码except 错误的类型:print(“报错后输出的内容”)2,捕获异常:try:错误代码except Except as 变量:print(变量,错误的类里)else:print(如果没有错误,输出的内容)finally:print(不管是否有错误,都会输出的内容)3,错误类型NameError 变量名不存在TypeError 类型错误SyntaxError 语法错误ImportError 导
2020-11-20 21:52:58
1170
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人