摘要: 一. python代码的调试方式 1. 使用print语句打印出来 2. 在编辑工具中,加断点跟踪(打断点) 3. 使用日志模块,输出到日志中 下面我们来看一下如何打断点 二. 环境 python 3.4.4 + Pycharm Professional Edition 2018.1,注意这里尽量用 阅读全文
posted @ 2019-04-08 21:54 种树飞 阅读(3314) 评论(0) 推荐(0) 编辑
摘要: (1)select==>时间复杂度O(n) 它仅仅知道了,有I/O事件发生了,却并不知道是哪那几个流(可能有一个,多个,甚至全部),我们只能无差别轮询所有流,找出能读出数据,或者写入数据的流,对他们进行操作。所以select具有O(n)的无差别轮询复杂度,同时处理的流越多,无差别轮询时间就越长。 ( 阅读全文
posted @ 2019-04-08 21:34 种树飞 阅读(193) 评论(0) 推荐(0) 编辑
摘要: 一、开发背景: 二、团队 from django.db import models from django.contrib.contenttypes.models import ContentType from django.contrib.contenttypes.fields import Ge 阅读全文
posted @ 2019-04-08 21:24 种树飞 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 一、如图所示 1、admin会通过admin.site.register(models.类名,模板类)的方式来注册models中的类。从源码中可以看出,如果我们没有写模板类的话源码就会默认继承ModelAdmin这个模板类,如果我们写了模板类的化也是在继承ModelAdmin这个类的基础上修改模板。 阅读全文
posted @ 2019-04-08 21:13 种树飞 阅读(898) 评论(0) 推荐(0) 编辑
摘要: admin组件使用 Django 提供了基于 web 的管理工具。 Django 自动管理工具是 django.contrib 的一部分。你可以在项目的 settings.py 中的 INSTALLED_APPS 看到它: django.contrib是一套庞大的功能集,它是Django基本代码的组 阅读全文
posted @ 2019-04-08 21:12 种树飞 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 一、开发背景 由于公司人员的增多,原来通过excel表格存取方式过于繁琐,而且对于公司人员的调配和绩效考核等不能做到精确处理,所以开发crm系统,开始开发只是针对销售人员和客户,后面陆续加上一些操作,如学校管理和教师管理,课程管理等, 二、开发周期 开发2个月,2个月后持续还在做:修复bug和新功能 阅读全文
posted @ 2019-04-08 21:10 种树飞 阅读(628) 评论(0) 推荐(0) 编辑
摘要: 简介 RabbitMQ:接受消息再传递消息,可以视为一个“邮局”。发送者和接受者通过队列来进行交互,队列的大小可以视为无限的,多个发送者可以发生给一个队列,多个接收者也可以从一个队列中接受消息。 code rabbitmq使用的协议是amqp,用于python的推荐客户端是pika 生产者:send 阅读全文
posted @ 2019-04-08 21:08 种树飞 阅读(209) 评论(0) 推荐(0) 编辑
摘要: nginx概述 nginx是一款自由的、开源的、高性能的HTTP服务器和反向代理服务器;同时也是一个IMAP、POP3、SMTP代理服务器;nginx可以作为一个HTTP服务器进行网站的发布处理,另外nginx可以作为反向代理进行负载均衡的实现。 基本Http服务,可以作为Http代理服务器和反向代 阅读全文
posted @ 2019-04-08 19:19 种树飞 阅读(231) 评论(0) 推荐(0) 编辑
摘要: Celery是什么? Celery 是一个由 Python 编写的简单、灵活、可靠的用来处理大量信息的分布式系统,它同时提供操作和维护分布式系统所需的工具。 Celery 专注于实时任务处理,支持任务调度。 说白了,它是一个分布式队列的管理工具,我们可以用 Celery 提供的接口快速实现并管理一个 阅读全文
posted @ 2019-04-08 19:07 种树飞 阅读(369) 评论(1) 推荐(0) 编辑
摘要: 第一章:引言 1.1 Tornado是什么? 1.1.1 Tornado入门 1.1.2 社区和支持 1.2 简单的Web服务 1.2.1 Hello Tornado 1.2.1.1 参数handlers 1.2.1.2 使用正则表达式指定路径 1.2.2 字符串服务 1.2.3 关于Request 阅读全文
posted @ 2019-04-08 19:00 种树飞 阅读(502) 评论(0) 推荐(0) 编辑
摘要: MongoDB是一款强大、灵活、且易于扩展的通用型数据库1、易用性 2、易扩展性 3、丰富的功能 4、卓越的性能 二 MongoDB基础知识 1、文档是MongoDB的核心概念。文档就是键值对的一个有序集{'msg':'hello','foo':3}。类似于python中的有序字典。 2、集合就是一 阅读全文
posted @ 2019-04-08 18:40 种树飞 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 一 介绍 Scrapy一个开源和协作的框架,其最初是为了页面抓取 (更确切来说, 网络抓取 )所设计的,使用它可以以快速、简单、可扩展的方式从网站中提取所需的数据。但目前Scrapy的用途十分广泛,可用于如数据挖掘、监测和自动化测试等领域,也可以应用在获取API所返回的数据(例如 Amazon As 阅读全文
posted @ 2019-04-08 18:28 种树飞 阅读(1410) 评论(0) 推荐(0) 编辑
摘要: 一 介绍 原来scrapy的Scheduler维护的是本机的任务队列(存放Request对象及其回调函数等信息)+本机的去重队列(存放访问过的url地址) 所以实现分布式爬取的关键就是,找一台专门的主机上运行一个共享的队列比如Redis,然后重写Scrapy的Scheduler,让新的Schedul 阅读全文
posted @ 2019-04-08 18:26 种树飞 阅读(256) 评论(0) 推荐(0) 编辑
摘要: 一、时间复杂度 用来评估算法运行效率的一个东西 print('Hello World') O(1) for i in range(n): print('Hello World') O(n) for i in range(n): for j in range(n): print('Hello Worl 阅读全文
posted @ 2019-04-08 18:24 种树飞 阅读(276) 评论(0) 推荐(0) 编辑
摘要: windows系统安装Python虚拟环境 首先保证你的系统已经安装好了Python 安装virtualenv C:\WINDOWS\system32>pip3 install virtualenv Collecting virtualenv Downloading virtualenv-15.1. 阅读全文
posted @ 2019-04-08 18:16 种树飞 阅读(1003) 评论(0) 推荐(0) 编辑
摘要: http://rabbitmq.mr-ping.com 中文文档 什么叫消息队列 消息(Message)是指在应用间传送的数据。消息可以非常简单,比如只包含文本字符串,也可以更复杂,可能包含嵌入对象。 消息队列(Message Queue)是一种应用间的通信方式,消息发送后可以立即返回,由消息系统来 阅读全文
posted @ 2019-04-08 18:13 种树飞 阅读(692) 评论(0) 推荐(0) 编辑
摘要: 单例模式(Singleton Pattern)是一种常用的软件设计模式,该模式的主要目的是确保某一个类只有一个实例存在。当你希望在整个系统中,某个类只能出现一个实例时,单例对象就能派上用场。 比如,某个服务器程序的配置信息存放在一个文件中,客户端通过一个 AppConfig 的类来读取配置文件的信息 阅读全文
posted @ 2019-04-08 18:05 种树飞 阅读(711) 评论(0) 推荐(0) 编辑