自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

转载 XPath笔记 --留存

常用的 : ①、/节点1/节点2.../节点n   :获取这个全路径下所有名字为 节点n的节点,返回一个集合 ②、child::book  :选取所有属于当前节点的子元素的 book 节点   RT,学习一篇博客所做的笔记,留做存根 参考原文:https://blog.csd...

2018-11-15 16:29:38 101 1

转载 GitHub 使用命令上传项目、下载项目

一、创建github repository(仓库) 1-1 登录github 1-2 创建repository(仓库) 如果没在这个页面也没关系,点击右上角的头像旁边的小三角,展开后可以看到Your profile,点击进入后也能看到repository 切换到repository...

2018-11-14 20:57:15 375 0

转载 scrapy-redis去重优化(Scrapy+Redis+Bloomfilter)附Demo福利

背景: 前些天接手了上一位同事的爬虫,一个全网爬虫,用的是scrapy+redis分布式,任务调度用的scrapy_redis模块。 大家应该知道scrapy是默认开启了去重的,用了scrapy_redis后去重队列放在redis里面。我接手过来的时候爬虫已经有7亿多条URL的去重数据了,再加上...

2018-11-13 22:38:44 2058 0

转载 mysql主从复制

mysql主从复制 (超简单) 怎么安装mysql数据库,这里不说了,只说它的主从复制,步骤如下: 1、主从服务器分别作以下操作:   1.1、版本一致   1.2、初始化表,并在后台启动mysql   1.3、修改root的密码 2、修改主服务器master:    #vi /etc/my....

2018-11-12 15:05:30 71 0

转载 什么是 RESTful ?、RESTful API?

一、要弄清楚什么是RESTful API,首先要弄清楚什么是REST。REST -- REpresentational State Transfer,英语的直译就是“表现层状态转移”。如果看这个概念,估计没几个人能明白是什么意思。 restFul是符合rest架构风格的网络API接口,完全承认H...

2018-11-10 21:43:57 131 0

原创 安装Jupyter Notebook过程及出错解决方案

1、直接安装:pip3 install jupyter 2、jupyter notebook 3、①报错: 解决:重新安装一下iPython ②如果报错没有:prompt-toolkit文件 因为在安装时报错,给卸掉了 解决:安装一下即可 4、再运行 5、同时,...

2018-11-08 12:32:04 5232 0

转载 Python爬虫---数据的提取和清洗的正则应用规则

最近在做一个项目,爬虫获取的数据可谓一锅粥,果断选择了正则表达式,下面是常用的规则: 表达式全集 字符 描述 \ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个向后引用、或一个八进制转义符。例如,“n”匹配字符“n”。“\n”匹配一个换行符。串行“\\”匹配“\”而“\...

2018-11-05 13:18:50 495 0

转载 HTTP协议对应的状态码及其含义

HTTP状态码(HTTP Status Code)   一些常见的状态码为:   1xx(临时响应)表示临时响应并需要请求者继续执行操作的状态代码。代码 说明   100 (继续) 请求者应当继续提出请求。 服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。   101 (切换协...

2018-11-05 11:15:51 654 0

原创 爬虫-- 分布式 Erlang 、RabbitMQ 和Celery 的安装

分布式:多台服务器处理一个任务 分布式爬虫 使用Celery + RabbitMQ  实现,而且 RabbitMQ 是基于Erlang 安装的 一、安装erlang  rabbitmq (1)windows下安装 1、先安装erlang  otp_win64_21.1  直接默认路径,不...

2018-10-30 20:07:49 233 0

原创 五十八、四、Django框架中配置使用mysql

mysql命令的回顾: 注意:django框架不会自动生成mysql数据库,所以需要手动去创建。 1、打开wamp软件,开始创建mysql数据库: 2、进入虚拟环境创建django项目: 3、进入项目创建应用 4、注册刚刚创建的应用: 5、修改set...

2018-09-11 21:51:35 63 0

原创 五十七、视图、模板配合使用,缺一不可、MVT综合案例

一、视图函数的使用 注意:视图函数必须有一个参数request,进行处理之后,需要返回一个HttpResponse的类对象, hello python就是返回给浏览器显示的内容。 1、在项目的views.py 文件中写入函数 2、进行url配置:建立url地址和视图的对应关系 在应用...

2018-09-11 21:30:26 93 0

原创 五十六、创建Django项目步骤、Django后台管理

1、windows下在桌面的路径(在自己指定的路径shift+打开命令窗口)或者 cd 路径 进入虚拟环境(workon 名称)--创建项目名称 test1 2、进入根目录test1: 3、创建分个应用(模块)例如自己定义名字--booktest     manage.py是管理文件...

2018-09-10 22:04:07 219 0

原创 五十五、windows和Linux下虚拟环境的创建和使用

一、问题: 安装同一个包的不同版本,后安装的包会把原来安装的包覆盖掉。这样,如同一台机器上两个项目依赖于相同包的不同版本, 则会导致一些项目运行失败。 解决的方案就是:虚拟环境。 虚拟环境是真实python环境的复制版本。 在虚拟环境中使用的python是复制的python,安装pyth...

2018-09-10 21:28:19 86 0

原创 五十四、mysql数据库8:MySQL内置函数 — 日期时间函数、加密sha1

一、日期时间函数 1、获取子值 2、日期计算,使用+-运算符,数字后面的关键字为year、month、day、hour、minute、second 3、日期格式化date_format(date,format) 4、当前日期current_date() 5、当前时...

2018-08-26 15:47:04 266 0

原创 五十三、Redis数据库3:使用pycharm软件写命令操作redis

一、参考学习: PyPI:https://pypi.python.org/pypi/redis GitHub:https://github.com/andymccurdy/redis-py 1、(重点学习)文档:http://redis-py.readthedocs.io/en/latest...

2018-08-26 14:26:25 755 0

原创 五十二、Redis 数据库 2:set类型、zset类型、hash类型

一、set集合类型(无序集合类型) redis里面的set集合类型是string类型的无序集合,被称为无序集合类型。 set元素最大可以包含(2的32次方-1)个元素。 1、集合满足三个特点: 无序性:集合里面的数据是没有顺序之分。 唯一性:集合里面的数据彼此是不能重复。 确定性:集合...

2018-08-25 22:30:27 384 0

原创 五十一、Redis数据库1:Redis数据库string类型、 list链表类型

一、数据库连接 直接本机连接:redis-cli 连接虚拟机:  redis-cli  -h  虚拟机ip地址 -p  6379 二、相关操作 Redis:内存缓存,key/value形式的 1、设置key及value 注意:username这个key没有的话会创建,有的话,就会覆...

2018-08-25 21:57:02 76 0

原创 五十、MongoDB数据库2:Python操作MongoDB数据库

一、安装pymongo库 pymongo是操作MongoDB的python模块 Python2的安装方法:python2 -m pip install pymongo Python3的安装方法:python3 -m pip install pymongo linux下的安装方法: sudo...

2018-08-25 20:28:05 107 0

原创 四十九、MongoDB数据库1:MongoDB的增、删、改、查

一、连接数据库 如果只在windows下使用:进入数据库命令:mongo 如果windows要连接虚拟机(服务器),命令:mongo  服务器IP地址:27017 Mongodb ‘无状态模式’,不用去设计,直接用,存什么东西,取决于前边传什么,后边就存什么。 中文文档:http://do...

2018-08-25 20:09:43 139 0

原创 四十八、mysql数据库7:Mysql与python的交互、参数化(重点python与mysql交互传参)

一、使用python命令连接数据库流程 二、python3 安装pymysql包 创建py文件,进行插入数据:通过python文件来连接数据库实现交互(前提需要安装pymysql包) 1、Linux下安装pymysql包 在python3的环境下安装pymysql包:pip3 inst...

2018-08-25 19:16:38 2745 0

原创 四十七、mysql数据库6:(重点)视图、事务、索引

一、视图 1、创建视图,建议以v_开头,查询所有学生信息 2、查看视图:查看表会将所有的视图也列出来 3、使用:视图的用途就是查询 4、删除视图 二、(重点)事务 1、事务(Transaction)是并发控制的基本单位。 所谓事务,它是一个操作序列,这些操作要么都执行...

2018-08-25 18:58:22 95 0

原创 四十六、mysql数据库5:(重点)商城数据库优化(三范式,细分表)、数据备份与还原

一、创建商品分类表:(分开插入数据的) 1、创建 goods_cates 表 #创建表if 用法: 如果不存在创建,存在报错 create table if not exists goods_cates(cate_id int unsigned primary key auto_increm...

2018-08-25 18:00:23 142 0

原创 四十五、mysql数据库4:MySQL高级查询

一、连接查询操作: mysql支持三种类型的连接查询,分别为:内连接、右连接、左连接。 注意:一个数据库中如果有多个表的话,表名是不能省略的。 1、使用内连接查询班级表与学生表(inner join) on后面跟着连接查询的条件: select students.name,c...

2018-08-25 17:37:27 62 0

原创 四十四、mysql数据库3:MySQL各种查询命令

一、查询的命令 1、查询所有信息: select * from 表名 ; 2、也可以这样查,查详细点:数据库.表名 .* 3、数据库的名字省略的前提是:你当前所选择的数据库就是该数据库,因此要选择相应的数据库里的表。 4、查询表中的部分字段信息:  ① 详细查询: ② 在当前表...

2018-08-18 17:03:40 88 0

原创 四十三、mysql数据库2:插入、更新、删除数据

一、插入数据 1、全列插入:(必须一一对应) ① 注意:为主键以及自动增长的id字段的值进行占位有3种方法【0】和【null】和【default】。          #全列插入——中间用,分开,一一对应起来,          #【0】和【null】和【default】都是占位符。 生日...

2018-08-18 16:36:51 121 0

原创 四十二、mysql数据库1:数据库初识、数据库与数据库表的相关操作

一、关系型数据库 当前主要使用两种类型的数据库:【关系型数据库】和【非关系型数据库】 所谓的关系型数据库RDBMS是建立在关系模型基础之上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。 1、关系型数据库核心元素 数据行(记录) 数据列(字段) 数据表(数据行的集合) ...

2018-08-18 16:12:50 129 0

原创 四十一、TCP网络:TCP的服务端和客户端、TCP 多进程、多线程 服务器

一、TCP服务器代码的编写 1、改成桥接模式:能通信 2、网络调试助手要选择TCP Client(客户端)、服务器和端口号要填写服务器的(虚拟机的)            3、服务端代码如下:  二、TCP客户端代码的编写 1、在虚拟机上运行代码(与服务端代码是两个文件) 2...

2018-08-16 21:14:36 190 0

原创 四十、Udp网络2:模拟QQ聊天功能、Udp总结和广播实例

一、模拟QQ聊天功能 1、echo服务器原理      收到了数据,再给人原封不动的返回去,这样的服务器就叫做echo服务器。 2、模拟QQ聊天-多线程+Udp网络      在虚拟机上运行程序,在网络调试助手回应虚拟机 二、udp总结和广播实例  广播只能在udp中使用,...

2018-08-15 20:42:56 359 0

原创 三十九、Udp网络1:使用socket 发送、接收数据,绑定端口和中文编码解码问题

一、初识Udp网络发送数据 (1)前提:必须要保证他们在同一个局域网中,要在一个网段才行         NetAssist.ext软件是用来协助我们完成网络请求:         网络设置:填写的是自己电脑上的IP地址。         目标主机和目标端口:填写的是你要给谁发送的那个人的...

2018-08-15 20:29:33 2185 0

原创 三十八、协程

一、协程 1、协程其实可以认为是比线程更小的执行单元 2、多进程和多线程的执行效率,没有协程高。      但是写代码还是协程用的少,因为代码逻辑较复杂。多用进程、线程。 3、计算机密集型===》需要占用大量的cpu资源,用多进程      IO密集型===》需要网络功能,大量的时间都在...

2018-08-14 20:11:41 53 0

原创 三十七、线程(重点):创建线程、线程共享全局变量、互斥锁(知道原理)

一、创建线程 (1)线程导包的两种方式: (2)    1、多个线程执行同一个函数,线程之间互不影响,并且主线程与子线程之间也互不影响,各自执行各自的代码    2、进程里面包含线程    ——       进程是资源分配的单位,线程是CPU调度的单位。          进程,能够...

2018-08-14 20:07:23 672 0

原创 三十六、进程2(重点):进程池Pool、进程间通信(队列、栈)、多进程拷贝文件(综合运用)

一、进程池Pool 1、apply_async (func , args , kwds)   非阻塞方式      apply(func,args,)  阻塞方式 使用非阻塞方式调用函数(并行执行,进程间同步执行) 堵塞方式必须等待上一个进程退出才能执行下一个进程(相当于单进程执行) a...

2018-08-13 20:49:48 113 0

原创 三十五、进程1:fork创建子进程(不常用)、Process创建子进程(常用)

一、fork创建子进程(不能跨平台,只在Linux下执行,windows下不执行)          编写完毕的代码,在没有运行的时候,称之为程序,     正在运行着的代码,就成为进程          进程,除了包含代码以外,还有需要运行的环境等,所以和程序是有区别的 1、主进程从一开始...

2018-08-10 20:51:43 1384 0

原创 三十四、正则表达式3:匹配分组(重点)以及 search、findall、sub、split方法介绍

一、匹配分组 1、| 匹配左右任意一个表达式 (|  或者的意思,匹配字符串整个内容的) 需求:匹配出0-100之间的数字 可以改进一下: 2、(ab)将括号中字符作为一个分组,可单独拿出来 ① 进行group()的时候是得到的整个匹配的内容     group()方法添加...

2018-08-10 20:16:23 414 0

原创 三十三、正则表达式2:r—转义、边界($、^、\b、\B)

一、转义  使用 r 能够自动转义\t、\n 来理解转义: 打印时本来是输不出\n的,加上r后自动转义,相当于\\nabc 总结: 1、r的意思是说:它是英文单词raw的一个缩写,也就是说当你在定义这个字符串的时候它是什么样的,最终在输出打印的时候      就是什么样的,中...

2018-08-09 20:32:06 4109 0

原创 三十二、(重点)正则表达式1:re模块(re.match、group())、正则表达式单字符匹配、正则数量({m}、{m,n})

一、re模块(re.match、group()方法) 1、 2、re.match() 能够匹配出以xxx开头的字符串(从左到右开始依次匹配) 3、若匹配成功,返回字符串的匹配成功的部分,同时可以使用group方法来提取具体的数据。 二、正则表达式的单字符匹配(只匹配1个字符) ...

2018-08-09 19:37:10 3025 0

原创 三十一、迭代器、iter()函数

一、凡是可作用于 for 循环的对象都是 Iterable(可迭代的对象) 类型 一类是集合数据类型,如 list 、 tuple 、 dict 、 set 、 str 等; 一类是 generator ,包括生成器和带 yield 的generator function。都是可迭代对象 ...

2018-08-09 10:11:18 102 0

原创 三十、列表生成式、生成器、__next__()、send(传参)

一、列表生成式(几种形式记住) 1、for只控制循环的次数,而for前面的变量决定着数据的内容,这就叫做列表生成式。 2、后面加判断句的,也常见   3、 4、 二、生成器(保存是算法,generator) 1、生成器的特点:只是保存了生成列表数的一个算法,什么时候需...

2018-08-07 17:50:49 119 0

原创 二十九、重点:__new__方法、单例模式(工厂模式)

一、__new__方法 1、真正在实例化对象的时候第一个执行的方法是__new__ 2、若__new__没有正确返回当前类cls的实例,那__init__是不会被调用的。 3、正确的返回当前类:return object.__new__(cls) 4、总结:Python的new方法负责创建...

2018-08-07 15:29:18 113 0

原创 二十八、闭包(装饰器的底层原理)、装饰器的引入、深入学习、带参数的装饰器

一、闭包的原理、结构 二、装饰器的引入 一句话总结:生成器是用来生成东西的,装饰器是用来装饰东西的。 1、定义了两个名称一样的函数(重写):只执行重写的函数 2、 运行原理: 把f1首地址(也可以记成把f1整个函数)传参给了w1方法的func,这时func=f1...

2018-08-06 20:18:04 117 0

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