- 博客(123)
- 收藏
- 关注
转载 SQLAlchemy
介绍SQLAlchemy是一个基于Python实现的ORM框架。该框架建立在DBAPI之上,使用对象关系映射进行数据库操作,简言之便:将类和对象转换成SQL,然后使用数据API执行SQL并获取执行结果。pip3 install sqlalchemy组成部分:Engine,框架的引擎Connection Pooling,数据库连接池Dialect,选择连接数据库的DB API种...
2019-07-23 20:21:00 279
转载 SessionMiddleware源码分析
settings.py文件中MIDDLEWARE = [ 'django.contrib.sessions.middleware.SessionMiddleware',]# from django.contrib.sessions.middleware import SessionMiddleware# ctrl+鼠标左击进入SessionMiddlewareclass S...
2019-07-20 22:21:00 308
转载 请求上下文源码分析
flask项目一启动,有6个全局变量_request_ctx_stack:LocalStack #LocalStack对象_app_ctx_stack:LocalStack #LocalStack对象current_app:LocalProxy(_find_app)request:LocalProxy #LocalStack对象session:LocalProxy #Local...
2019-07-20 22:20:00 250
转载 信号、多app应用、flask-script
信号Flask 框架中的信号基于blinker,其只要就是让开发者可以在flak请求过程中制定一些用户行为安装:pip3 install blinker内置信号request_started = _signals.signal('request-started') # 请求到来前执行request_finished = _signals.signa...
2019-07-20 22:08:00 168
转载 wtforms
wtforms安装:pip3 install wtforms使用1:from flask import Flask, render_template, request, redirectfrom wtforms import Formfrom wtforms.fields import simplefrom wtforms import validatorsfrom wtf...
2019-07-20 22:07:00 108
转载 flask-session、数据库连接池
flask-session作用:将默认保存的签名cookie中的值保存到redis/memcached/file/Mongodb/SQLAlchemy安装:pip3 install flask-session使用方法1:from flask import Flask, sessionfrom flask_session import RedisSessionInterface...
2019-07-20 22:04:00 392
转载 中间件、蓝图、g对象
中间件'''flask中一旦请求到来,要执行app()--->>>执行的是app.__call__,整个flask的入口'''from flask import Flaskapp = Flask(__name__)@app.route('/')def index(): return 'index'# 模拟中间件class My(obj...
2019-07-20 22:03:00 116
转载 session、闪现、请求扩展
session除请求对象之外,还有一个session对象。它允许你在不同请求储存特定用户的信息。它是在Cookies的基础上实现的,并且对,Cookies进行密钥签名要使用会话,你需要设置一个密钥。(app.session_interface对象)使用必须先设置一下密钥:app.secret_key = 'xxxx'session['name'] = 'xxx' #放值sess...
2019-07-20 22:00:00 92
转载 模版、请求相应
模版'''支持函数加括号并且传参其它的用法完全同DTL模版中处理:{{ ss|safe }}视图函数中:ss = Markup(ss)如何处理xss攻击 html中的符号替换成了特殊字符 Markup或是|safe是把特殊字符重新替换回来Markup等价于django的mark_safeextends,include一模一样'''from flask ...
2019-07-20 21:58:00 79
转载 CBV、正则
CBV(源码分析)from flask import Flask, viewsapp = Flask(__name__)class IndexView(views.MethodView): methods = ['GET', 'POST'] def get(self): return '这个是get请求' def post(self...
2019-07-20 21:57:00 125
转载 路由系统
典型写法@app.route('/detail/<int:id>', methods=['GET'], endpoint='detail')默认转换器DEFAULT_CONVERTERS = {'default': UnicodeConverter,'string': UnicodeConverter,'any': AnyConverter,'path': Pa...
2019-07-20 21:56:00 114
转载 快速入门
Flask简介Flask是一个基于Python开发并且依赖jinja2模板和Werkzeug WSGI服务的一个微型框架,对于Werkzeug本质是Socket服务端,其用于接收http请求并对请求进行预处理,然后触发Flask框架,开发人员基于Flask框架提供的功能对请求进行相应的处理,并返回给用户,如果要返回给用户复杂的内容时,需要借助jinja2模板来实现对模板的处理,即:将模...
2019-07-20 21:54:00 133
转载 Django中间件之SessionMiddleware源码分析
settings.py文件中MIDDLEWARE = [ 'django.contrib.sessions.middleware.SessionMiddleware',]# from django.contrib.sessions.middleware import SessionMiddleware# ctrl+鼠标左击进入SessionMiddlewareclass S...
2019-07-17 22:43:00 524
转载 git线上操作
选择线上仓库"""1.注册码云账号并登录:https://gitee.com/2.创建仓库(课堂截图)3.本地与服务器仓库建立连接""""""1)本地配置线上的账号与邮箱>: git config --global user.name "doctor_owen">: git config --global user.email "doctor_owen@16...
2019-07-10 22:35:00 105
转载 计算机基础
什么是编程语言?语言是一个事物与另外一个事物沟通的表达方式。而编程语言则人与计算机沟通的表达方式什么是编程?编程就是程序员用计算机能理解的表达方式(编程语言)把人想让计算机做的事表达出来写到文件里,这些文件称之为程序。为什么编程?在编程的世界里计算机就像是你的奴隶,人之所要编程就是想要让计算机代替人力去工作。计算机硬件组成?控制器:计算机的指挥系统运算器:数学运算&am...
2019-07-08 15:14:00 83
转载 面试题
python基础面试题1.为什么学习Python?Python是目前市面上,我个人认为是最简洁、最优雅、最有前途、最全能的编程语言,没有之一。2.通过什么途径学习的Python?3.Python和Java、PHP、C、C#、C++等其他语言的对比?Python:轻量级、易学、自由/开放源码软件、可移植性、支持面向对象、丰富的库、规范的代码。Java:优点:开源性,功能强大,库...
2019-07-03 17:26:00 2974
转载 redis实现计数器
用redis实现计数器社交产品业务里有很多统计计数的功能,比如:用户: 总点赞数,关注数,粉丝数帖子: 点赞数,评论数,热度消息: 已读,未读,红点消息数话题: 阅读数,帖子数,收藏数统计计数的特点实时性要求高写的频率很高写的性能对MySQL是一个挑战可以采用redis来优化高频率写入的性能要求。redis优化方案一对于每一个实体的计数,设计一个hash结...
2019-07-03 17:19:00 909
转载 数据结构
数据结构和算法概念数据结构的定义 我们如何把现实中大量而且非常复杂的问题以特定的数据类型(个体)和特定的存储结构(个体的关系)保存到相应的主存储器(内存)中,以及在此基础上为实现某个功能而执行的相应操作,这个相应的操作也叫做算法。数据结构 == 个体 + 个体的关系算法 == 对存储数据的操作数据结构的特点数据结构是软件中最核心的课程程序 = 数据的存储 + 数据的操作 ...
2019-07-02 21:00:00 145
转载 CMDB
IT运维的分类 IT运维,指的是对已经搭建好的网络,软件,硬件进行维护。运维领域也是细分的,有硬件运维和软件运维。 硬件运维主要包括对基础设施的运维,比如机房的设备,主机的硬盘,内存这些物理设备的维护。 软件运维主要包括系统运维和应用运维,系统运维主要包括对OS,数据库,中间件的监控和维护,这些系统介于设备和应用之间,应用运维主要是对线上业务系统的运维。传统运维痛点日程工...
2019-07-02 19:22:00 367
转载 算法
时间复杂度需求:某段程序执行的时间传统做法: import time start = time.time() 程序 end = time.time() end - start上述做法的前提是: 程序所依赖的硬件环境是要一致的 因此,我们不能够单纯的使用time这个模块计算程序的执行时间时间复杂度: 用来估算程序执行次...
2019-07-01 18:39:00 73
转载 Django xadmin
Django-xadmin的介绍Django是python的重量级web框架,写的少做的多,非常适合后端开发,它很大的亮点是自带后台管理模快,但它自带的后台管理有点丑,而Xadmin是基于bootstrap开发的一套后台管理框架,界面非常美观,只需要几步就可以替换自带的Django_admin具体的安装步骤1。xadmin在python2.x时代的安装方法在python2.x时代...
2019-06-28 20:46:00 159
转载 Linux 目录
FHS 在早期的 UNIX 系统中,各个厂家各自定义了自己的 UNIX 系统文件目录,比较混乱。Linux 面世不久后,对文件目录进行了标准化,于1994年对根文件目录做了统一的规范,推出 FHS ( Filesystem Hierarchy Standard ) 的 Linux 文件系统层次结构标准。FHS 标准规定了 Linux 根目录各文件夹的名称及作用,统一了Linux界...
2019-06-26 21:36:00 142
转载 服务器的组件
硬件基础1.计算机的构成主机:CUP、内存、硬盘、主板、电源 外设:输入:(键盘、鼠标、扫描仪、摄像头)输出:(显示器、音响、耳机、打印机)2.运维的介绍运维的核心职责 数据不能丢失 7*24小时运行 提升用户的满意度(网站访问-速度-快)3.运维人员平时的工作的内容日常服务器的维护,处理紧急故障 业务代码上线 完成项目(备份项目、控制项目等) 无服务的监控 网站...
2019-06-26 20:53:00 2224
转载 Haystack(全文搜索框架)
1.什么是HaystackHaystack是django的开源全文搜索框架(全文检索不同于特定字段的模糊查询,使用全文检索的效率更高 ),该框架支持Solr,Elasticsearch,Whoosh,**Xapian搜索引擎它是一个可插拔的后端(很像Django的数据库层),所以几乎你所有写的代码都可以在不同搜索引擎之间便捷切换全文检索不同于特定字段的模糊查询,使用全文检索...
2019-06-03 22:32:00 272
转载 Celery
1.什么是CleleryCelery是一个简单、灵活且可靠的,处理大量消息的分布式系统专注于实时处理的异步任务队列同时也支持任务调度Celery架构Celery的架构由三部分组成,消息中间件(message broker),任务执行单元(worker)和任务执行结果存储(task result store)组成。消息中间件Celery本身不提供消息服务,但...
2019-06-03 19:05:00 68
转载 Scrapy框架
一 介绍 Scrapy一个开源和协作的框架,其最初是为了页面抓取 (更确切来说, 网络抓取 )所设计的,使用它可以以快速、简单、可扩展的方式从网站中提取所需的数据。但目前Scrapy的用途十分广泛,可用于如数据挖掘、监测和自动化测试等领域,也可以应用在获取API所返回的数据(例如 Amazon Associates Web Services ) 或者通用的网络爬...
2019-05-31 10:07:00 229
转载 BeautifulSoup与Xpath
BeautifulSoup一 简介简单来说,Beautiful Soup是python的一个库,最主要的功能是从网页抓取数据。官方解释如下:'''Beautiful Soup提供一些简单的、python式的函数用来处理导航、搜索、修改分析树等功能。它是一个工具箱,通过解析文档为用户提供需要抓取的数据,因为简单,所以不需要多少代码就可以写出一个完整的应用程序。...
2019-05-29 23:59:00 99
转载 requests请求库
一 介绍 Python内置为我们提供了一个内置的模块叫urllib,是用于访问网络资源的,但是由于它内部缺少一些实用的功能,所以用起来比较麻烦。后来出现了一个第三方模块叫 "Requests",Requests 继承了urllib2的所有特性。Requests支持HTTP连接保持和连接池,支持使用cookie保持会话,支持文件上传,支持自动确定响应内容的编码,支持国际化的 UR...
2019-05-28 23:09:00 15548
转载 selenium模块
一 介绍# selenium最初是一个自动化测试工具,而爬虫中使用它主要是为了解决requests无法直接执行JavaScript代码的问题。# selenium本质是通过驱动浏览器,完全模拟浏览器的操作,比如跳转、输入、点击、下拉等,来拿到网页渲染之后的结果,可支持多种浏览器。from selenium import webdriver# 谷歌浏览器...
2019-05-28 22:56:00 80
转载 爬虫基本原理
一 爬虫是什么1. 爬虫介绍 ''' 近年来,随着网络应用的逐渐扩展和深入,如何高效的获取网上数据成为了无数公司和个人的追求,在大数据时代,谁掌握了更多的数据,谁就可以获得更高的利益,而网络爬虫是其中最为常用的一种从网上爬取数据的手段。 网络爬虫,即Web Spider,是一个很形象的名字。如果把互联网比喻成一个蜘蛛网,那么Spider就是在网上...
2019-05-28 22:46:00 294
转载 登录、认证、token处理、前台cookie存储token
免费课程相关表设计models的设计from django.contrib.contenttypes.fields import GenericRelationclass Course(models.Model): name = models.CharField(verbose_name="课程名", max_length=32) title = mo...
2019-05-27 19:53:00 772
转载 提高网站的并发、缓存
并发'''1.CDN:一些第三方的静态文件直接访问别人的服务器2.精灵图:将多个小图通过UI人员拼接成一张大图,降低请求图片资源的次数3.数据库:可以缓存的数据,就只存在redis,将一些必须在硬盘的数据才存放在MySql,如果需要缓存,还可以利用redis做硬盘数据的内存缓存4.数据库自身的优化:sql优化|索引|分库分表|读写分离5.缓存:数据可以缓存,文...
2019-05-27 19:28:00 82
转载 Redis安装即python使用
一:简介redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础...
2019-05-25 14:16:00 189
转载 mysql优化的常用方法
mysql的优化,大体分为三部分:索引的优化,sql语句的优化,表的优化1.索引的优化只要列中含有NULL值,就最好不要在此列设置索引,复合索引如果有NULL值,此列在使用时也不会使用索引尽量使用短索引,如果可以,应该制定一个前缀长度对于经常在where子句使用的列,最好设置索引,这样会加快查找速度对于有多个列where或者order by子句的,应该建立复合索引...
2019-05-23 12:13:00 48
转载 Django ContentType(ORM操作)
ContentType-设计课程表# 数据:"""免费课:Python入门学位课:Python全栈价格策略:Linux入门 7 0Python入门 7 0Python入门 14 9.9Python入门 30 199Python全栈 ...
2019-05-23 11:33:00 140
转载 Vue环境搭建、创建与启动、案例
vue环境搭建"""1) 安装node官网下载安装包,傻瓜式安装:https://nodejs.org/zh-cn/2) 安装cnpmnpm install -g cnpm --registry=https://registry.npm.taobao.orgmac操作(sudo npm install -g cnpm --registry=https://...
2019-05-23 11:26:00 107
转载 rest_framework五大模块
面向对象封装面向对象封装导入# 1.将子类共有的方法抽离形成父类方法# 2.子类使用共有方法,使用的是父类方法# 3.共有方法中的资源,在子类使用方法时,获取的是子类资源class MyClass: name = None @classmethod def test(cls): print(c...
2019-05-22 11:49:00 241
转载 分页
准备# app.models.py :数据层class Book(models.Model): name = models.CharField(max_length=20) price = models.DecimalField(max_digits=5, decimal_places=2)# objectjson.py :序列化class Boo...
2019-05-21 12:00:00 65
转载 权限认证、频率认证
权限组件# app.models.py:表结构class User(models.Model): user = models.CharField(max_length=32) password = models.CharField(max_length=32) choice = ((1, '超级用户'), (2, '普通用户'), (3, '穷逼...
2019-05-21 11:56:00 69
转载 Django request
'''1.HttpRequest.GET 一个类似于字典的对象,包含 HTTP GET 的所有参数。详情请参考 QueryDict 对象。2.HttpRequest.POST 一个类似于字典的对象,如果请求中包含表单数据,则将这些数据封装成 QueryDict 对象。 POST 请求可以带有空的 POST 字典 —— 如果通过 HTTP ...
2019-05-20 09:53:00 62
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人