摘要: #任何实现了 __iter__ 和 __next__ 方法的对象都是迭代器,所以生成器是一种特殊的迭代器#生成器的标志是yied 函数class Range: def __init__(self, start, end=None, step=1): if end is None: self.end = start self.... 阅读全文
posted @ 2018-09-29 21:10 gugubeng 阅读(130) 评论(0) 推荐(0)
摘要: # 插入排序算法 def insert_sort(ilist): for i in range(len(ilist)): for j in range(i): if ilist[i] blist[j]: blist[i], blist[j] = blist[j], blist[i] return bl... 阅读全文
posted @ 2018-09-29 20:37 gugubeng 阅读(119) 评论(0) 推荐(0)
摘要: 常见的http状态码 100:继续 客户端应当继续发送请求。客户端应当继续发送请求的剩余部分,或者如果请求已经完成,忽略这个响应。 101: 转换协议 在发送完这个响应最后的空行后,服务器将会切换到在Upgrade 消息头中定义的那些协议。只有在切换新的协议更有好处的时候才应该采取类似措施。 102 阅读全文
posted @ 2018-09-29 15:28 gugubeng 阅读(132) 评论(0) 推荐(0)
摘要: 1、bs4 BeaufulSoup 和lxml一样都是用于解析html的框架,对数据的分析和提取。 和lxml相比,效率略低,用起来比较方便 bs4需要下载安装: pip install bs4 2、jsonPath(了解) 安装:pip install jsonpath 3、selenium se 阅读全文
posted @ 2018-09-29 15:25 gugubeng 阅读(140) 评论(0) 推荐(0)
摘要: 1、代理服务器 ​ 1、为什么要使用代理服务器? ​ 有时候用同一个ip去抓取某个网站时,时间久了就会被该网站屏蔽。此时可以通过代理服务器,去代替我们真实的IP去爬取。 ​ 2、从哪里能够获取到代理服务器? ​ 代理服务器一般是要花钱购买的,如果用于实验也可以用免费的 ​ http://www.ku 阅读全文
posted @ 2018-09-29 15:23 gugubeng 阅读(116) 评论(0) 推荐(0)
摘要: 1、POST和GET ​ get请求: ​ 1)创建url字符串(这个字符串中带有请求体) ​ 2)创建请求头 ​ 3)根据url和请求头创建请求对象 ​ 4)通过请求对象发起get请求 ​ post请求: ​ 1)创建url字符串(这个字符串中不带请求体) ​ 2)创建请求头 ​ 3)创建请求体 阅读全文
posted @ 2018-09-29 15:22 gugubeng 阅读(130) 评论(0) 推荐(0)
摘要: 1、爬虫的概念 ​ 概念:Spider(网络蜘蛛),通过互联网生的一个个的节点,获取其中的数据,然后进行分析存储 ​ 爬虫的三个过程:数据的获取、数据的分析、数据的存储 ​ 爬虫的分类 ​ 通用爬虫: ​ 主要用于搜索引擎,百度、谷歌、360、必应等 ​ 工作原理: ​ 数据的获取=>网页的分析=> 阅读全文
posted @ 2018-09-29 15:21 gugubeng 阅读(153) 评论(0) 推荐(0)
摘要: 阿里云项目部署 部署Django项目 部署Django项目 部署Django项目 部署Django项目 部署Django项目 部署Django项目 1, 配置nginx 1.1 进入:cd /var/www, 将外面压缩好的AXF项目拖入xshell中,并解压 1.2 配置nginx.conf: 将 阅读全文
posted @ 2018-09-29 15:06 gugubeng 阅读(195) 评论(0) 推荐(0)
摘要: 阿里云项目部署 ( 如果xshell连接不上阿里云: 解决方法: 1, 在淘宝IP地址库查看当前IP: http://ip.taobao.com/ 2, 点击进入:安全(云盾) -> 安骑士(服务器安全)-> 设置 -> 安全配置 3, 在‘登录IP拦截加白’中点击添加, 将当前公网添加后点击确定 阅读全文
posted @ 2018-09-29 15:04 gugubeng 阅读(173) 评论(0) 推荐(0)
摘要: 阿里云部署项目 1, 购买阿里云ECS云服务器(可免费试用1个月) 2, 阿里云实例更换为Ubuntu 3, 安全组配置 4, xshell远程连接 5, 创建虚拟环境: 5.1 linux基本命令 cd ls, ls -a pwd df -h python python3 apt update ​ 阅读全文
posted @ 2018-09-29 15:02 gugubeng 阅读(149) 评论(0) 推荐(0)
摘要: 项目开发流程&项目架构 1. 软件开发的一般流程 1. 需求分析及确认: 由需求分析工程师与客户确认甚至挖掘需求。输出需求说明文档。 ​ 2. 概要设计及详细设计: 开发对需求进行概要设计,包括系统的基本处理流程,组织结构、模块划分、接口设计、数据库结构设计等。然后在概要设计的基础上进行详细设计。详 阅读全文
posted @ 2018-09-29 15:00 gugubeng 阅读(787) 评论(0) 推荐(0)
摘要: 中间件&验证码&富文本&缓存 1. 中间件&AOP 中间件:是一个轻量级的,底层的插件,可以介入Django的请求和响应过程(面向切面编程) ​ 中间件的本质就是一个python类 ​ 面向切面编程(Aspect Oriented Programming)简称AOP。AOP的主要实现目的是针对业务处 阅读全文
posted @ 2018-09-29 14:17 gugubeng 阅读(311) 评论(0) 推荐(0)
摘要: token&静态文件&媒体文件 1. token 1. 会话技术 2. 服务端会话技术 3. 它实际上就是手动实现的session 4. 实现token 4.1 在models.py中User类中添加token字段 class User(models.Model): name = models.Ch 阅读全文
posted @ 2018-09-29 14:14 gugubeng 阅读(528) 评论(0) 推荐(0)
摘要: views 1. 视图及HttpRequest 和HttpResponse Django中的视图主要用来接受Web请求,并做出响应。 视图的本质就是一个Python中的函数 视图的响应分为两大类 1)以Json数据形式返回 (JsonResponse) 2)以网页的形式返回 2.1)重定向到另一个网 阅读全文
posted @ 2018-09-29 14:10 gugubeng 阅读(260) 评论(0) 推荐(0)
摘要: day 05 models进阶 1.models基本操作 django中遵循 Code Frist 的原则,即:根据代码中定义的类来自动生成数据库表。 对于ORM框架里: 我们写的类表示数据库的表 如果根据这个类创建的对象是数据库表里的一行数据 那么对象.属性(对象.id 对象.value)就是每一 阅读全文
posted @ 2018-09-29 14:06 gugubeng 阅读(404) 评论(0) 推荐(0)
摘要: models模型 1. models 定义属性 概述 django根据属性的类型确定以下信息 ·当前选择的数据库支持字段的类型 ·渲染管理表单时使用的默认html控件 ·在管理站点最低限度的验证 django会为表增加自动增长的主键列,每个模型只能有一个主键列,如果使用选项设置某属性为主键列后,则d 阅读全文
posted @ 2018-09-29 14:02 gugubeng 阅读(264) 评论(0) 推荐(0)
摘要: admin后台系统 1. 安装MySQL 1,安装mysql: sudo apt install mysql-server (安装过程中输入密码并牢记) 2,安装后进入mysql: mysql -u用户名 -p密码 mysql -uroot -proot ​ 3,在Django中配置和使用mysql 阅读全文
posted @ 2018-09-29 13:58 gugubeng 阅读(547) 评论(0) 推荐(0)
摘要: 1. URL URL地址说明: URL地址说明: URL地址说明: URL地址说明: URL地址说明: URL地址说明: 使用url给视图函数传参数 在url配置中将正则部分小括号括起来。比如: url(r'^time/plus/(\d{1,2})/$', views.hours_ahead) 如果 阅读全文
posted @ 2018-09-29 11:55 gugubeng 阅读(1098) 评论(0) 推荐(0)
摘要: 1.1, virtualenv的概述 virtualenv是用来创建Python的虚拟环境的库,虚拟环境能够独立于真实环境存在,并且可以同时有多个互相独立的Python虚拟环境,每个虚拟环境都可以营造一个干净的开发环境,对于项目的依赖、版本的控制有着非常重要的作用。 虚拟环境有什么意义? 比如: 我 阅读全文
posted @ 2018-09-29 11:52 gugubeng 阅读(759) 评论(0) 推荐(0)
摘要: Django+uwsgi+nginx nginx和uwsgi的区别和作用: 1, nginx是对外的服务器,外部浏览器通过url访问nginx, uwsgi是对内的服务器,主要用来处理动态请求。 2, nginx接收到浏览器发送过来的http请求,将包进行解析,分析url, a.如果是静态文件请求就 阅读全文
posted @ 2018-09-29 11:47 gugubeng 阅读(4911) 评论(0) 推荐(0)
摘要: 阿里云部署Flask项目 部署Flask项目和部署Django项目基本一致,我们也使用uwsgi+nginx 部署Flask项目和部署Django项目基本一致,我们也使用uwsgi+nginx 部署Flask项目和部署Django项目基本一致,我们也使用uwsgi+nginx 部署Flask项目和部 阅读全文
posted @ 2018-09-29 11:37 gugubeng 阅读(255) 评论(0) 推荐(0)
摘要: FlaskDay06 Flask项目-淘票票 RESTful REST一种软件架构风格、设计风格、而不是标准,只是提供了一组设计原则和约束条件。它主要用户客户端和服务器交互类的软件. ​ 在前后端分离项目中, 一般使用Flask-RESTful来实现 REST一种软件架构风格、设计风格、而不是标准, 阅读全文
posted @ 2018-09-29 11:36 gugubeng 阅读(653) 评论(0) 推荐(0)
摘要: RESTful API 什么是REST 一种软件架构风格、设计风格、而不是标准,只是提供了一组设计原则和约束条件。它主要用户客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存机制等。 REST全称是Representational State Transfer,表 阅读全文
posted @ 2018-09-29 11:29 gugubeng 阅读(723) 评论(0) 推荐(0)
摘要: 模型进阶 多对多关联 用户收藏电影,一个用户可以收藏多部电影, 一部电影可以被不同的用户收藏, 是一个多对多关系. ​ # 中间表(不是模型) collects = db.Table('collects', # user_id为表字段名称, user.id为外键表的id db.Column('use 阅读全文
posted @ 2018-09-29 11:24 gugubeng 阅读(373) 评论(0) 推荐(0)
摘要: 数据迁移 安装 pip install flask-migrate 初始化 使用app和db进行migrate对象初始化 from flask_migrate import Migrate migrate = Migrate() migrate.init_app(app=app, db=db) 安装 阅读全文
posted @ 2018-09-29 11:20 gugubeng 阅读(547) 评论(0) 推荐(0)
摘要: 会话技术 Cookie 客户端端的会话技术 cookie本身由浏览器保存,通过Response将cookie写到浏览器上,下一次访问,浏览器会根据不同的规则携带cookie过来 ​ 特点: - 客户端会话技术,浏览器的会话技术 - 数据全都是存储在客户端中 - 存储使用的键值对结构进行的存储 - 特 阅读全文
posted @ 2018-09-29 11:18 gugubeng 阅读(333) 评论(0) 推荐(0)
摘要: Flask简介 Flask是一个基于Python实现的Web开发‘微’框架 'MicroFramework' Django是一个重型框架 官方文档: http://flask.pocoo.org/docs/0.12/ 中文文档: http://docs.jinkan.org/docs/flask/ 阅读全文
posted @ 2018-09-29 11:12 gugubeng 阅读(744) 评论(0) 推荐(0)
摘要: cors跨域 什么是跨域 跨域(跨源)是指浏览器从一个源的网页去请求另一个源,源指的是域名、端口、协议 以下都属于跨域问题 域名: 主域名不同: http://www.baidu.com/index.html –> http://www.sina.com/test.js 子域名不同: http:// 阅读全文
posted @ 2018-09-29 10:58 gugubeng 阅读(439) 评论(0) 推荐(0)
摘要: celery 介绍 Celery - 分布式任务队列. Celery 是一个简单、灵活且可靠的,处理大量消息的分布式系统,并且提供维护这样一个系统的必需工具。 ​ 它是一个专注于实时处理的任务队列,同时也支持任务调度. ​ Celery是基于Python开发的一个分布式任务队列框架,支持使用任务队列 阅读全文
posted @ 2018-09-29 10:39 gugubeng 阅读(218) 评论(1) 推荐(0)