自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

原创 flask学习2

8.请求钩子8.1 before_first_request#再在第一次请求之前调用,可以做初始化操作@app.before_first_requestdef before_first_request(): print('--------->before_first_request')8.2 before_request@app.before_requestdef before_request(): print('--------->before_request'

2020-10-20 19:23:37 105

原创 numpy常见的函数与pandas的series类型

2.numpy常见的函数2.1 条件判断函数np.all(指定条件)所有的元素都必须满足指定条件np.any(指定条件,axis=)至少有一个元素满足指定条件axis=1表示对每列axis=0表示对每行2.2 数组的增删改np.append(数组,添加的数据)可同时增加多个,以列表的形式多维数组增加时,输出会变成一维数组np.insert(数组,插入位置,插入数据)插入的数据与数组数据类型一致多维数组插入数据时,如不指定行列,则输出一维数组指定行列时,插入的数据需要与行列

2020-10-19 19:39:28 399

原创 flask学习

1.flask的第一个app# 1 加载接口名from flask import Flask# 2 实例化app = Flask(__name__)# 3 定义视图函数@app.route('/index')def index(): return 'hello world'# 4 利用装饰器生产路由映射# 5 开启服务器if __name__ == '__main__': app.run(debug=True)2.查看路由3.创建app的参数def __i

2020-10-19 18:48:12 85

原创 数据分析(1)

数据分析1.numpy1.1 数组1.1.1 创建数组# newlist = [1,2,3]# print('列表',newlist)# print(type(newlist))# arr1 = numpy.array(newlist)# print('数组',arr1)# print(type(arr1))1.1.2 数组的组成1.1.2.1 维度的个数print('维度的个数',arr1.ndim)1.1.2.2 维度的大小print('维度的大小',arr1.shape

2020-10-12 19:32:10 269

原创 Django学习(2)

Django学习3.1 创建虚拟环境mkvirtualenv -p python3 虚拟环境名-p python是指定使用python33.2 安装pip install django==指定版本号 3.3 创建项目django-admin startproject 项目名称3.4 创建子应用python manage.py startapp 子应用的名字创建完成后需要在settings.py文件中注册3.5 运行python manage.py runserver [端

2020-09-27 19:49:03 70

原创 Django学习(1)

MTC和MTV1.MVCM:Model(模块),封装对数据库层的访问, 数据处理,对数据库中的数据进行增、删、改、查操作。V:View(视图),界面显示,用于封装结果,生成页面展示的html内容C:Controller(控制器),逻辑处理,用于接收请求,处理业务逻辑,与Model和View交互,返回结果MVC的设计核心:解耦,让不同的代码块之间降低耦合,增强代码的可扩展和可移植性,实现向后兼容。2.MTVM:Model(模块),与MVC中的M功能相同,负责和数据库交互,进行数据处理。V:V

2020-09-27 19:27:20 63

原创 mongodb的基本操作

2.mongodb创建使用数据库use 数据库名查看数据库show dbs 物理意义上的数据库mysqlmongodbdatabasedatabasetablecollectionrowdocument文档column 数据属性field 字段/域indexindexprimary keyprimary key2.1 集合创建集合db.createCollection(集合名)show collections;d

2020-09-25 19:20:08 72

原创 redis的基本操作

redisredis是非关系型数据库,一共支持5中数据类型redis是键值对(key-value)型的数据库通用操作查看所有键名keys *删除数据del 键名1 键名2...string添加数据set 键名 值给数据设置限制时间setex 键名 过期时间 值如过期时间设置为10,则10秒后数据库自动删除这份数据查看数据get 键名如果键名错误,并不会报错,只会返回一个空值添加多条数据mset 键名1 值1 键名2 值2 ...查看多条数据mget 键名

2020-09-25 19:10:54 56

原创 爬虫——scrapy框架

scrapy框架1.框架的基本解读scrapy engine 引擎,负责各个部件之间的通讯,信号以及数据的交流与传递scheduler 调度器,负责接收的是引擎发送过来的requests请求,按照一定的方式进行整理排序,入队,将来如果引擎需要,就将requests请求还给引擎downloader 下载器,负责将引擎传递过来的requests发送出去,将返回的response对象,直接交给引擎,再由引擎交给spiderDownloader middlewares 下载中间件,自定义的内容,扩

2020-09-23 19:57:43 106

原创 爬虫4——BeautifulSoup

5.BeautifulSoup5.1 安装pip install beautifulsoup45.2 re lxml bs4的区别工具速度使用难度正则最快最难lxml较快一般BeautifulSoup慢最简单7.4 解析字符串str1='<div>这是测试div</div>'soup = BeautifulSoup(str1,'lxml')print(soup)注意:使用 BeautifulSoup时会自动选择系

2020-09-23 19:13:41 61

原创 爬虫——Xpath

3.爬虫的具体步骤1.需要数据对应的真实URL地址2.找到对应的请求方式3.使用第三方包,构造请求(注意需要进行伪装,headers的伪装,最重要的是需要进行浏览器伪装——User-Agent)4发送请求5.收到响应之后,需要对响应体数据进行解析(普通的页面text,如果是多媒体文件是content)6.将拿到的页面或者多媒体文件按照需求进行提取(正则,Xpath等)7..将获取到的目标文件进行保存4.Xpath学习4.1 html和xml的区别xml不是html的替代,他们是为了不同

2020-09-23 18:58:53 127

原创 测试的分类

1、测试的分类1.1 按照项目的流程阶段划分单元测试对软件中的最小可测试单元进行检查和验证,一般指一个函数或类集成测试在单元测试的基础上,将所有模块按照设计要求组装成为子系统或系统,进行集成测试系统测试是对整个系统的测试,将硬件、软件、操作人员看作一个整体,检验它是否有不符合系统说明书的地方。验收测试验收测试的目的是确保软件准备就绪,并且可以让最终用户将其用于执行软件的既定功能和任务。1.2 对于代码的可见程度:白盒测试:"白盒"法全面了解程序内部逻

2020-09-23 18:43:15 88

原创 定位元素

2、安装自动化测试工具2.1 安装2.2安装webdriver驱动按照浏览器的版本寻找对应的驱动3、webdriver API3.1 从定位元素开始3.1.1 id定位 def find_element_by_id(self, id_): """Finds an element by id. :Args: - id\_ - The id of the element to be found. :Returns:

2020-09-23 18:43:07 114

原创 webdriver控制浏览器

3.2 控制浏览器3.2.1 控制浏览器窗口大小# driver.set_window_size(400,600)driver.maximize_window() 注意点:1、set_window_size 需要指定宽高2、maximize_window 不需要指定任何参数,一般情况下,pc端需要全屏显示3.2.2控制浏览器前进与后退driver.back()time.sleep(5)driver.forward()3.2.3 刷新页面driver.refresh()3.2.

2020-09-23 18:42:56 92

原创 爬虫(2)

2.正则匹配2.1 match进行匹配import re# match方法进行匹配,是从头开始匹配。match这个函数如果成功匹配,返回的就是一个对象,如果匹配不到数据,返回的就是noneresult = re.match('python','python is good')print(result)#group这个方法是用来提取匹配到的数据print(result.group())注意点:match是从头匹配2.2 字符2.2.1 . 单个任一字符result=re.matc

2020-09-21 19:39:05 64

原创 爬虫(1)

1.爬虫基础知识1.1 爬虫的分类通用爬虫:搜索引擎的一部分,将互联网的网页下载到本地形成镜像聚焦爬虫:面向特定的需求,在网络抓取的时候对内容已经进行了筛选1.1.1 搜索引擎工作原理1.1.1.1抓取网页 搜索引擎网络爬虫1、首先选取一部分的种子url,将这些url放入到等待抓取的url队列中2、取出待抓取的url地址,解析主机的ip,将url对应的网页下载下来,存储进已经下载的网页库中,并且将这些已经完成url地址抓取的url放入到已经抓取的url队列中3、分析已经抓取的url队列中的.

2020-09-18 20:06:13 144

原创 数据库—函数

14.2 函数优点:同存储过程14.2.1 函数与存储过程的区别存储过程:可以有返回值,也可以没有返回值,视具体情况而定函数:有且只有一个返回值,适合处理完成后返回一个结果14.2.2 函数的格式create function 函数名(参数列表) returns 返回类型begin 函数体endselect 函数名()注意点:1、参数列表只包括两个部分 参数名 参数类型2、函数体需要 returns3、函数的调用使用select...

2020-09-17 17:53:46 38

原创 数据库—存储过程

14.1 存储过程作用:一般情况下,用于数据库的增删改格式create procedure 存储过程名(参数列表)begin 存储过程体(合法有效的sql语句)end注意点:1.参数列表 包含3个部分 参数模式 参数名 参数类型(例: in uesrname varchar(20))2.参数模式in 表示该参数作为输入,该参数调用的时候传入值out 该参数作为输出,就是返回值inout 即可以当做输入,也可以当做输出3.begin end,在存储过程只有一条语句时,可以省略4

2020-09-17 17:53:16 39

原创 数据库(13)与python的交互

17.与python的交互17.1 步骤创建连接——>获取操作句柄——>执行sql语句——>关闭操作句柄——>关闭连接17.2 具体操作import pymysql#todo 创建连接方式con = pymysql.connect(host='localhost',user='root',password='mysql',port=3306,charset='utf8',database='shanghui')print(con)#todo 获取操作句柄cur

2020-09-17 17:49:54 77

原创 数据库(12)查看索引生效

16.6 如何查看索引生效explain+sql语句 模拟的是优化器执行sql查语句的,分析查询语句的性能16.7 explain执行的结果EXPLAIN SELECT * FROM goods WHERE goods.`brande_id`=(SELECT brand.`id` FROM brand WHERE brand.`brandename`='IT教育视频')16.7.1 id的具体内容select查询的序列号,包含的是一组数字,表示的是查询中执行的select子句或者操作表的顺序

2020-09-17 17:48:56 1076

原创 数据库(11)索引

16.索引16.1 mysql架构原理16.2 为什么用索引SQL性能下降,SQL慢,执行的时间长,等待时间过长原因:1、SQL语句写的烂​ 2、索引失效​ 3、关联查询太多​ 4、服务器或者各种参数的设置(缓冲、线程数等)索引:index帮助mysql进行高效查询的,为了帮助更高效率获取数据的数据结构本质上索引是一个排好序的快速查找的数据结构建议一张表不要超过5个索引16.3 索引的分类1、单值索引一个索引只包含单个的列,一张表可以有多个单值索引2、唯一值索引

2020-09-17 17:47:25 49

原创 数据库(10)流程控制结构

15.流程控制结构15.1 分支结构15.1.1 if函数实现了简单的 双分支if(表达式1,表达式2,表达式3)执行顺序:如果表达式1成立,返回表达式2的结果,否则返回表达式315.1.2 if结构语法if 条件1 then 语句1;elseif 条件2 then 语句2;......else 语句;end if应用在begin...end15.1.3 case语句case 变量|表达式|字段when 要判断的值 then 返回的值或者语句1;when 要判断的值

2020-09-17 17:45:58 57

原创 数据库(8)变量

13.变量13.1 系统变量13.1.1 定义由系统提供的,属于服务器层面的,启动之后就会出现的,已经有初始值的13.1.2 系统变量的分类1、全局变量 mysql在启动的时候由服务器将他们初始化默认值2、会话变量 针对的是每一次创建的连接,由mysql来进行初始化操作,会将当前所有的全局变量复制一份,存储为会话变量13.1.3 全局变量(1)查看所有的全局变量 SHOW GLOBAL VARIABLES (2)模糊查找全局变量 SHOW GLOBAL VARIABLE

2020-09-17 17:43:55 306

原创 数据库(7)视图

12.视图一种虚拟存在的表,行和列的数据来自定义视图的查询中使用的表,并且在使用视图的时候,动态生成的,只是保存着sql逻辑,不保存结果视图:虚拟表,和普通表一样,但是通过表,动态生成的表:数据库中真实存在的创建视图creat view 视图名 as sql语句使用视图select * from 视图名应用场景多个场景用到相同的sql语句该查询使用的sql比较复杂12.1 修改视图1、create or replace view 视图名 as 查询语句 2、

2020-09-17 17:43:26 40

原创 数据库(6)事务

11.TCL事务管理语言事务:一个或一组SQL语句组成的一个执行单元,这个单元要么全部完成,要么全部失败ACID事务的属性:1.原子性:一个事务是不可再分的工作单元2.一致性:事务必须是数据库从一个一致的状态转换到另一个一致的状态3.隔离性:一个事务的执行,不能被其他事务干扰4.持久性:一个事务一旦被提交它对数据库的改变是永久有效的11.1 存储引擎定义:数据库中使用不同的存储技术将数据存储在文件中# 查看当前数据库支持的存储引擎SHOW ENGINES;注意点:1、innodb

2020-09-17 17:42:08 103

原创 数据库(5)

10. DML语言10.1 增加数据value和values的区别(只在MySQL中成立)插入多条数据时 value性能更好插入一条数据时 values性能更好实际没有太大的影响10.1.1 全列插入全列插入insert into 表名 values(每一列的值按照顺序填写);10.1.2 缺省插入insert into 表名(字段1,字段2......) values(字段1的值,字段2的值.....);注意点:1、字段的书写顺序由自己定,可以不按照数据库表设计的顺序2、插

2020-09-09 17:39:39 138

原创 数据库(4)

8.数据库表的处理8.1 修改字段的名字以及数据类型和约束alter table 表名 change 旧字段名 新字段名 数据类型和约束;8.2 只修改字段的数据类型及约束alter table 表名 modify 字段名 数据类型及约束;8.3 增加字段alter table 表名 add 字段名 数据类型及约束;8.4 删除字段alter table 表名 drop 字段名;8.5 修改数据库表名alter table 旧表名 rename to 新表名 ;8.6 表的复

2020-09-09 17:39:07 73

原创 数据库(3)

7.数据类型7.1 字符varchar 表示的是可变长度的字符串 varchar(3) 'as’还是‘as’ 在定义的过程中,必须指定长度char 表示的是固定长度的字符串char(3), 'as'变为'as ',可以不指定,默认一个字符,最大255text 大文本存储,当数据字符大于4000时使用decimal(m,n) m代表的是一共有M位,但是n表示的是小数占多少位int 使用4个字节保存整数数据7.2 整数1、如果没有设置,默认是有符号数,如果需要设置无符号数,用UNSI

2020-09-09 17:38:16 137

原创 数据库(2)

6.DDL学习6.1 创建数据库create database 数据库名称提高容错率create database if not exists 数据库名称注意点:1.数据库的语句不区分大小写2.不能重复创建相同名称的库6.2 删除数据库drop database 数据库名称drop database if exists 数据库名称不能删除不存在的库6.3 显示所有数据库show databases;6.4 使用数据库ues 数据库名6.4 创建一张表数据库由多张表

2020-09-09 17:31:39 198

原创 数据库(1)

1.数据库的类型1.关系型数据库oracle 银行、政府MySQL 最广泛的postgresqlsqlite 移动平台等2.非关系型数据库redismongodb 等2.数据库的核心元素1.sql:关系型的数据库语言2.Mysql 具体的数据库3.RDBMS 关系型数据库管理系统4.数据库:数据库是一种特殊的文件3.sql语句的分类DML:数据操作语句,添加,删除,修改,查询数据库的记录,检测数据的完整性 insert(添加) delete(删除)

2020-09-09 17:30:53 57

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除