django:主要是用来搞快速开发的,他的亮点就是快速开发,节约成本,正常的并发量不过 10000,如果要实现高并发的话,就要对 django 进行二次开发,比如把整个笨重的框架给拆掉,自己写 socket实现 http 的通信,底层用纯 c,c++写提升效率,ORM 框架给干掉,自己编写封装与数据库交互的框架,因为啥呢,ORM 虽然面向对象来操作数据库,但是它的效率很低,使用外键来联系表与表之间的查询: flask:轻量级,主要是用来写接口的一个框架,实现前后端分离,提升开发效率,Flask…
django:主要是用来搞快速开发的,他的亮点就是快速开发,节约成本,正常的并发量不过10000,如果要实现高并发的话,就要对django进行二次开发,比如把整个笨重的框架给拆掉,自己写socket实现http的通信,底层用纯c,c++写提升效率,ORM框架给干掉,自己编写封装与数据库交互的框 架,因为啥呢,ORM虽然面向对象来操作数据库,但是它的效率很低,使用外键来联系表与表之间的查询: flask:轻量级,主要是用来写接口的一个框架,实现前后端分离,提升开发效率,Flask本身相当于一个内核…
Django 与 Tornado 各自的优缺点Django优点: 大和全(重量级框架)自带orm,template,view 需要的功能也可以去找第三方的app注重高效开发全自动化的管理后台(只需要使用起ORM,做简单的定义,就能自动生成数据库结构,全功能的管理后台)session功能缺点: template不怎么好用(来自自身的缺点)数据库用nosql不方便(来自自身的缺点)如果功能不多,容易臃肿 Tornado优点: 少而精(轻量级框架)注重性能优越,速度快解决高并发(请求处理是基于回调的非…
前言 大家应该都知道在编程语言中,定时任务是常用的一种调度形式,在Python中也涌现了非常多的调度模块,本文将简要介绍APScheduler的基本使用方法. 一.APScheduler介绍 APScheduler是基于Quartz的一个python定时任务框架,实现了Quartz的所有功能,使用起来十分方便.提供了基于日期.固定时间间隔以及crontab类型的任务,并且可以持久化任务. APScheduler提供了多种不同的调度器,方便开发者根据自己的实际需要进行使用:同时也提供了不同的存储机…
前言 大家应该都知道在编程语言中,定时任务是常用的一种调度形式,在Python中也涌现了非常多的调度模块,本文将简要介绍APScheduler的基本使用方法. 一.APScheduler介绍 APScheduler是基于Quartz的一个python定时任务框架,实现了Quartz的所有功能,使用起来十分方便.提供了基于日期.固定时间间隔以及crontab类型的任务,并且可以持久化任务. APScheduler提供了多种不同的调度器,方便开发者根据自己的实际需要进行使用:同时也提供了不同的存储机…
我们都在讲web开发web开发,那到底什么是web呢? 如果你正在学习python三大主流web框架,那这些你必须要知道了 软件开发架构: C/S架构:Client/Server    客户端与服务端 B/S架构:Browser/Server  浏览器与服务端(本质上仍是C/S架构) HTTP协议: 超文本传输协议:规定了客户端(浏览器)与服务端消息传输的格式 例:我们用socket启一个服务端,用浏览器去访问相应端口,如果服务端按普通c/s方式发送文本信息,浏览器是无法解析和识别的,这就是服务…
原文标题:<Python网络爬虫-Scrapy的选择器Xpath> 对原文有所修改和演绎 优势 XPath相较于CSS选择器,可以更方便的选取 没有id class name属性的标签 属性或文本特征不显著的标签 嵌套层次极其复杂的标签 XPath路径 定位方式 / 绝对路径 表示从根节点开始选取 // 相对路径 表示从任意节点开始 基本的节点定位 #查找html下的body下的form下的所有input节点 /html/body/form/input #查找所有input节点 //input…
想安装tornado框架,但总是有奇怪错误,如下: 如果按照默认的下载源,就会死活不成功,出现 Traceback (most recent call last): File "e:\python38\lib\site-packages\pip\_vendor\urllib3\response.py", line 397, in _error_catcher yield File "e:\python38\lib\site-packages\pip\_vendor\urlli…
安装sqlalchemy pip3 install sqlalchemy 创建表结构: from sqlalchemy import Column,String,create_engine from sqlalchemy.orm import sessionmaker,relationship from sqlalchemy.ext.declarative import declarative_base import pymysql #创建对象的基类 Base = declarative_bas…
unittest 当中为我们提供了许多加载用例的方法,这里说下常用的两种方法...推荐使用第二种 第一种加载测试用例的方法:使用加载器加载两个模块 需要把所有的模块加载到套件中 那么就可以自动的运行所有的模块 执行顺序是按照导入测试用例的先后来执行的,先执行 num_multi,在执行 num_add import unittest # 导入写好的测试用例,可以使用 as 重新命名更加简短方便 from Python_0715_unittest import lemon_06_unittest_…