学习笔记
文章平均质量分 91
笑揖峰头月一轮
这个作者很懒,什么都没留下…
展开
-
Redis-Python交互:HyperLogLog、管道、事务、发布和订阅
RedisRedis安装和设置redis-py的安装Python和Redis交互编码连接池连接方式操作String操作管道事务发布和订阅订阅/取消订阅发布消息消息处理关闭链接pubsub子命令RedisRedis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。它通常被称为数据结构服务器,因为值(v...原创 2018-11-30 09:55:35 · 422 阅读 · 0 评论 -
Django学习25-重定向
Django附带一个可选的重定向应用程序。 它允许您在数据库中存储简单的重定向并为您处理重定向。 它默认使用HTTP响应状态代码301 Moved Permanently。安装了 django.contrib.sites 框架;在INSALLED_APPS中添加'django.contrib.redirects',添加django.contrib.redirects.middleware....原创 2018-11-24 17:40:50 · 150 阅读 · 0 评论 -
Django学习19-站点地图
Django站点地图站点地图 站点地图是网站上的一个XML文件原创 2018-11-17 20:00:31 · 372 阅读 · 0 评论 -
Django学习21-基于类的视图1
class-based views基于类的视图使用基于类的视图使用多重继承(mixins)基于类的视图 视图是可调用的,它接收请求并返回响应。这可能不仅仅是一个函数,Django提供了一些可用作视图的类的示例。这些允许您通过利用继承和mixin来构建视图并重用代码。 基于类(class-based)的视图提供了另一种方法,将视图实现为Python对象而不是函数。 它们不会替换基于函数(f...原创 2018-11-19 23:17:30 · 1033 阅读 · 0 评论 -
Django学习24-logging
Django的日志记录logging快速入门Loggers记录器Handler处理程序Filters过滤器Formatter日志格式使用日志记录命名记录器调用日志记录设置日志Django 日志扩展Django的内置logger记录器处理程序过滤器Django默认的logging设置logging快速入门Django使用了Python内置模块logging作为系统日志记录。其设置包括4个部分:L...原创 2018-11-23 22:52:12 · 427 阅读 · 0 评论 -
MongoDB-复制、分片
MongoDBMongoDB的安装与设置安装与设置PyMonoMongoDB的安装与设置MongoDB 是由 C++语言编写的非关系型数据库, 是一个基于分布式文件存储的开源数据库系统 ,其内容存储形式类似 JSON 对象,它的字段值可以包含其他文档、数组及文档数组,非常灵活。MongoDB 是非关系数据库当中功能最丰富,最像关系数据库的,它与关系型数据库的对应:SQL术语/概念M...原创 2018-12-05 11:30:46 · 417 阅读 · 0 评论 -
MongoDB-排序、索引、聚合
MongoDB排序索引聚合聚合管道Map-Reduce单一用途的聚合函数排序使用sort()方法对数据进行排序,可以通过参数指定排序的字段,并可以指定排序方式(默认升序)db = client['first_demo']col = db['sites']for doc in col.find({"alexa": {"$gt": '100'}}).sort('name', pymongo....原创 2018-12-04 09:29:52 · 935 阅读 · 0 评论 -
MongoDB-CURD增、删、改、查
MongoDBMongoDB操作创建数据库添加数据插入多条自定义_id插入查询查询指定字段指定条件查询type类型查询正则表达式查询指定查询返回数修改文档删除数据MongoDB操作在 Python 中, 如果想要和 MongoDB 进行交互 ,就需要借助于 PyMongo 库:pip install pymongo使用python 进行简单的插入和查询。# -*- coding: utf-...原创 2018-12-04 09:26:54 · 770 阅读 · 0 评论 -
MongoDB-安装与设置
MongoDBMongoDB的安装与设置NoSQLMongoDB的特点安装与设置MongoDB的安装与设置MongoDB 是由 C++语言编写的非关系型数据库, 是一个基于分布式文件存储的开源数据库系统 ,其内容存储形式类似 JSON 对象,它的字段值可以包含其他文档、数组及文档数组,非常灵活。MongoDB 是非关系数据库当中功能最丰富,最像关系数据库的,它与关系型数据库的对应:S...原创 2018-12-04 09:25:16 · 1378 阅读 · 0 评论 -
MongoDB-存储
数据的存储存储引擎是MongoDB中负责管理数据的的主要组件,负责管理数据在内存和磁盘上的存储方式。MongoDB支持多个存储引擎,因为不同的引擎可以更好地执行特定工作负载,允许用户选择最合适的存储引擎。journal是一个日志,可以在硬件关机时帮助数据库恢复。 有几个可配置选项允许日志在性能和可靠性之间取得平衡,适用于特定用例。GridFS是一种多功能存储系统,适用于处理大型文件,例如超过...原创 2018-12-06 11:44:42 · 1218 阅读 · 0 评论 -
MongoDB数据模型
MongoDB数据模型设计Embedded Data - 内嵌数据模型文档大小限制规范化数据模型MongoDB特性与数据模型原子性分片索引大量的集合与SQL数据库在插入数据之前必须确定并声明表的模式不同,MongoDB的集合不要求其文档具有相同的模式:单个集合中的文档不需要具有相同的字段集,并且字段的数据类型可以在集合中的文档之间不同。要更改集合中文档的结构(例如添加新字段,删除现有字段或...翻译 2018-12-08 11:01:42 · 1907 阅读 · 0 评论 -
Redis-Python交互:流Stream
Redis增删改查:独立消费创建消费组消费控制消息的长度redis5.0 新特性,官方介绍:https://redis.io/topics/streams-intro参考:https://blog.csdn.net/shellquery/article/details/80562422增删改查:xadd(self, name, fields, id=’*’, maxlen=None, ...原创 2018-12-05 11:45:25 · 3571 阅读 · 0 评论 -
Redis-Python交互:编码、连接、基本命令
Redis编码连接池连接方式操作key操作服务器操作在redis-py 3.0之后就不在支持使用传统的‘Redis’客户端类了。StrictRedis现在只是Redis的一个别名,现在这个连接更加python化。例如,使用redis的字符串操作setbit和getbit来统计用户活跃天数:'''用Redis统计用户上线次数理解:A用户 100010001000001 //活跃了4天B...原创 2018-12-05 11:43:07 · 688 阅读 · 0 评论 -
Redis-Python交互:数据类型操作
RedisString操作Hash操作列表操作集合有序集合sorted set*SCAN操作String操作redis中的String在在内存中按照name:value来存储的。set(self, name, value, ex=None, px=None, nx=False, xx=False):get(self, name):获取key的值getset(self, name, va...原创 2018-12-05 11:42:37 · 358 阅读 · 0 评论 -
Redis-持久化
Redis持久化RDB快照RDB快照运作AOF (append-only file)AOF重写AOF耐久从RDB切换到AOF备份Redis数据持久化Redis 提供了多种不同级别的持久化方式:RDB 持久化可以在指定的时间间隔内生成数据集的时间点快照(point-in-time snapshot)。AOF 持久化记录服务器执行的所有写操作命令,并在服务器启动时,通过重新执行这些命令来还原...原创 2018-12-05 11:35:09 · 125 阅读 · 0 评论 -
Django学习23-测试
测试编写和运行测试test命令测试工具The test client对于现代Web开发人员来说,自动化测试是一种非常有用的消除bug的方法。您可以使用一组测试 - 测试套件 - 来解决或避免许多问题:在编写新代码时,可以使用测试来验证代码是否按预期工作。当您重构或修改旧代码时,可以使用测试来确保您的更改不会意外地影响应用程序的运行。测试Web应用程序是一项复杂的任务,因为Web应用程序...原创 2018-11-21 22:14:12 · 662 阅读 · 0 评论 -
Django学习22-基于类的视图2
class-based views使用基于类的通用视图处理表单处理模型表单Model formsModel和request.user使用基于类的通用视图处理表单表单处理程序大致上分为3种:初始化的GET请求,显示空值或预设值;使用了无效的数据进行POST提交,重新显示表单并报错;正确地进行POST提交,会重定向到其他网页;可以观察一个简单的联系表:from django impo...原创 2018-11-20 19:15:00 · 319 阅读 · 0 评论 -
爬虫学习2-相关原理
原理HTTP基本原理网页基础网页的基本组成HTMLCSSJavaScriptHTML DOM爬虫的基本原理爬虫抓取的数据JavaScript渲染的页面会话和Cookies静态网页和动态网页HTTP是不保存状态的协议会话会话何时结束Cookiescookie的内容会话Cookie和持久Cookie代理代理的基本原理代理的作用HTTP基本原理 HTTP的全称是Hyper Text Transfe...原创 2018-11-14 16:32:35 · 295 阅读 · 0 评论 -
Django学习7-Bootstrap样式:分页
使用Bootstrap样式使用Bootstrap设置项目样式topics页面分页设置使用bootstrap样式设置分页使用Bootstrap设置项目样式topics页面分页设置当前topics页面下显示全部的topic,没有分页设置,下面使用django.core.paginator.Paginator进行分页设置。class Paginator(object_list, per_page...原创 2018-10-27 14:44:44 · 616 阅读 · 1 评论 -
Django学习4-用户User模型、进行登录
创建用户账户建立一个用户注册和身份验证系统,让用户能够注册账户,进而登录和注销。创建一个新的应用程序,其中包含与处理用户账户信息相关的所有功能。对topic模型做出修改,让每个Topic和post都归属于特定的用户。应用程序users使用startapp创建应用程序users:将users应用添加到 settings.py 中。# Application definitionINS...原创 2018-10-24 23:12:59 · 3208 阅读 · 0 评论 -
Django学习10-扩展User模型
Django添加搜索功能添加搜索功能利用在导航栏上的搜索框,搜索相关的topics。原创 2018-10-31 22:26:24 · 445 阅读 · 0 评论 -
Django学习6-Bootstrap样式:导航栏、表单、card
Bootstrap的安装pip install django-bootstrap4安装完成。可以在venv下的lib看到bootstrap4:然后在setting.py中添加bootstrap应用:INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.con...原创 2018-10-26 23:05:15 · 10531 阅读 · 2 评论 -
Django学习8-邮件发送、Celery异步任务、消息
DjangoDjango邮件Django邮件原创 2018-10-29 22:11:45 · 757 阅读 · 0 评论 -
Django学习3-用户账户:模型、表单、视图函数、模板
创建表单,让用户能添加主题和条目,以及编辑现有的条目。实现用户身份验证系统,供用户创建账户。原创 2018-10-23 17:23:28 · 545 阅读 · 0 评论 -
Django使用Jinja2模板引擎
Jinja2Jinja2模板引擎Jinja2语法Jinja2 基本语法Jinja2 变量Jinja2变量过滤器Jinjia2控制结构Jinja2 宏Jinja 模板继承Jinja2模板引擎安装Jinja2 :pip install jinja2,在应用目录下添加jinja2_env.py设定环境变量。from django.contrib.staticfiles.storage import...原创 2018-10-21 21:05:05 · 5451 阅读 · 1 评论 -
Django学习5-用户账户:注册
用户账户创建用户账户注册注册URL模式注册视图函数register注册模板注册时添加邮箱字段用户与数据限制访问数据与用户关联用户访问自己的数据创建用户账户注册Django没有注册用户的视图函数和URL模式,自定义URL模式,编写视图函数和模板。注册URL模式在users/urls.py中导入注册函数registerfrom django.urls import path, includ...原创 2018-10-25 20:04:34 · 690 阅读 · 0 评论 -
Celery学习
Celery异步任务处理框架CeleryCelery的构成Celery安装RabbitMQRabbitMQ的安装RabbitMQ Server设置RabbitMQ 服务开启关闭Redis安装设置Redis简单使用Celery使用创建应用运行Celery 执行单元调用任务异步任务处理框架CeleryCelery是一个简单,灵活,可靠的分布式系统,用于处理大量消息,同时为操作提供维护此类系统所需的...原创 2018-10-28 21:46:53 · 220 阅读 · 0 评论 -
Django学习1-环境配置、创建模型、QuerySet
DjangoDjango虚拟环境配置创建项目创建数据库运行项目创建应用程序创建模型Topic激活模型Django 管理网站注册超级用户向admin site注册模型模型Post功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可...原创 2018-10-20 13:03:41 · 966 阅读 · 0 评论 -
Django学习2-URL模式,模板基本语法
Django学习2创建网页映射URL视图函数创建其他网页创建网页使用Django创建网页的过程通常分三个步骤:定义URL、编写视图函数和编写模板。每个URL都被映射到特定的视图-视图函数获取处理网页信息的数据。视图通常需要一个模板,后者生成浏览器能理解的网页。映射URL通过浏览器中输入URL以及单机链接来请求网页,在URL配置文件urls.py中设置处理主页(http://localho...原创 2018-10-22 15:06:11 · 905 阅读 · 0 评论 -
Django学习9-itsdangerous加密
Django使用加密验证itsdangerous加密令牌验证用的视图函数和URL验证邮件使用加密验证注册后在发送给用户的邮件中添加验证链接,最简单链接就是http://www.xxxx.com/users/comfirm/<id>这种形式的URL,其中id为数据库给注册的用户分配的id。用户点击访问这个链接后,对应的视图函数会确认收到用户的id,然后用户的状态更新为已验证。但这原创 2018-10-30 20:49:41 · 531 阅读 · 0 评论 -
Django学习11-ImageField添加头像、Markdown富文本
添加用户头像在用户信息UserProfile中添加ImageField字段,用于头像上传和显示,而要使用ImageField(或是FileField)必须先进行一些设置:在setting.py中设置一个MEDIA_ROOT作为Django保存文件的完整路径(这些文件并不会保存在数据库中),定义MEDIA_URL为该目录的基本公共URL。 确保Web服务器的用户帐户可以写入此目录;# Bu...原创 2018-11-01 22:13:31 · 1017 阅读 · 0 评论 -
数据库MySQL
MySQL安装和设置MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件。安装和设置可以直接使用apt命令安装sudo apt-g...原创 2018-11-06 15:48:58 · 530 阅读 · 0 评论 -
Django学习20-数据库相关2
Django的数据库原创 2018-11-18 20:59:28 · 159 阅读 · 0 评论 -
爬虫学习笔记3
基本库的使用urllib发送请求urlopen()参数urllib urllib是Python内置的HTTP请求模块,它包含request:它是最基本的 HTTP 请求模块,可以用来模拟发送请求 。 就像在浏览器里输入网址然后回车一样,只需要给库方法传入 URL 以及额外的参数,就可以模拟实现这个过程了。error:异常处理模块,如果出现请求错误 ,我们可以捕获这些异常,然后进行重试...原创 2018-11-15 20:23:30 · 489 阅读 · 0 评论 -
Django学习15-缓存:Memcache
缓存CacheDjango 缓存系统CACHES使用缓存缓存整个网站页面缓存在模板中使用缓存Cache API设置Vary header控制缓存Memcached安装Memcached 运行使用Memcached作为Django缓存Memcached的缺点Django 缓存系统Django是动态网站,每次用户请求页面时,Web服务器都会进行各种计算:从数据库查询到模板呈现再到业务逻辑 ,使得访...原创 2018-11-08 22:25:40 · 638 阅读 · 0 评论 -
Django学习18-Session会话
Django会话启用session配置session使用数据库存储会话使用Cache存储会话Warning使用文件存储会话使用cookie存储会话在视图函数中启用session测试cookie在视图函数外使用session会话何时进行存储会话保持时间清除保存的会话会话相关的设置会话安全Django完全支持也匿名会话,简单说就是使用跨网页之间可以进行通讯,比如显示用户名,用户是否已经发表评论。se...原创 2018-11-11 21:03:43 · 228 阅读 · 0 评论 -
Python爬虫1:环境配置
开发环境配置请求库的安装无界面的浏览器解析库的安装开发环境:Ubuntu18.04+python3.6请求库的安装爬虫可以简单分为几步:抓取页面、分析页面和存储数据 。在抓取页面的过程中 ,我们需要模 拟浏览器向服务器发出请求,所以需要用到一些 Python 库来实现 HTTP 请求操作。requests: pip install requests;selenium: Selenium...原创 2018-11-13 20:06:33 · 911 阅读 · 0 评论 -
数据库PostgreSQL
数据库PostgreSQL安装与设置数据库管理可视化管理工具pgAdmin数据库操作数据库连接Pycharm连接数据库python连接PostgreSQL数据库远程连接数据库PostgreSQLPostgreSQL是一个功能强大的开源对象关系数据库管理系统(ORDBMS)。 用于安全地存储数据; 支持最佳做法,并允许在处理请求时检索它们。特点:PostgreSQL可在所有主要操作系统(即...原创 2018-11-05 20:32:59 · 1469 阅读 · 0 评论 -
Django学习14-数据库相关1
Django 数据库数据导入使用迁移文件提供数据用fixture导入数据数据库的迁移数据导入Django在进行数据库操作时,要有相对应的数据表。创建数据表的过程:models中创建模型–>使用makemigrations命令生成迁移文件–>migrate修改数据库表结构。使用迁移文件提供数据有时候在对数据库进行处理之前原创 2018-11-07 23:23:39 · 2435 阅读 · 0 评论 -
Djang学习17-安全
Security in DjangoXSS保护CSRF保护SQL注入保护Clickjacking保护SSL/HTTPSHost header validationSession securityUser-uploaded content其它翻译自Djangov2.1的安全相关:https://docs.djangoproject.com/en/2.1/topics/security/XSS保护...翻译 2018-11-10 17:13:06 · 198 阅读 · 0 评论