<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[dmguying的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/dmguying</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; dmguying]]></copyright><item><title><![CDATA[Mysql数据备份及数据恢复]]></title><link>https://blog.youkuaiyun.com/dmguying/article/details/109891261</link><guid>https://blog.youkuaiyun.com/dmguying/article/details/109891261</guid><author>dmguying</author><pubDate>Mon, 23 Nov 2020 11:49:22 +0800</pubDate><description><![CDATA[binlog日志
1、binlog日志有两个作用：进行主从复制和进行数据恢复（定时全备份+binlog日志恢复增量数据部分）。利用binlog日志做增量数据进行恢复。
2、配置开启binlog日志：
log-bin=mysql-bin            ### binlog日志的名称
binlog_format=mixed          ### 基于SQL语句的复制(statement-based replication, SBR)，基于行的复制(row-based replication, RBR]]></description><category></category></item><item><title><![CDATA[tp5 里面实现RBAC和AUTH权限认证]]></title><link>https://blog.youkuaiyun.com/dmguying/article/details/108253790</link><guid>https://blog.youkuaiyun.com/dmguying/article/details/108253790</guid><author>dmguying</author><pubDate>Thu, 27 Aug 2020 16:28:09 +0800</pubDate><description><![CDATA[概述
权限管理几乎每个后台管理系统都需要的，这个问题困扰了我好久，而且网上找了好多资料，发现讲的都不怎么全。今天我下决心用一天到两天的时间一定一步一步在tp5里面实现。
RBAC
1、rbac的实现依赖以下几个composer组件
   composer require gmars/tp5-nestedsets
   composer require gmars/tp5-rbac	

由于RBAC组件需要数据库迁移，故需要一个数据库迁移组件：
  "topthink/think-migration": "^]]></description><category></category></item><item><title><![CDATA[tp和laravel 模板输出 html标签]]></title><link>https://blog.youkuaiyun.com/dmguying/article/details/106534793</link><guid>https://blog.youkuaiyun.com/dmguying/article/details/106534793</guid><author>dmguying</author><pubDate>Wed, 03 Jun 2020 22:44:57 +0800</pubDate><description><![CDATA[问题：layui里面 输出 tp5 的 数据时把 标签的 &lt; 转换了，如下所示：


在tp里面 这样写 就可以解决问题了：

在laravel 里面是如下使用：
laravel  正常输出是双大括号   输出html是{!!  $a !!}


]]></description><category></category></item><item><title><![CDATA[Python中的迭代器、生成器]]></title><link>https://blog.youkuaiyun.com/dmguying/article/details/104338956</link><guid>https://blog.youkuaiyun.com/dmguying/article/details/104338956</guid><author>dmguying</author><pubDate>Sun, 16 Feb 2020 11:28:17 +0800</pubDate><description><![CDATA[迭代器
要想知道什么是迭代器，先要知道什么是迭代
1、迭代：迭代，顾名思义就是重复做一些事很多次，就像我们
可以对list,tuple,dict,str等数据类型使用for…in的循环语法，从其中依次取出数据，这个过程叫做遍历，也叫迭代。
2、可迭代迭代对象：
简单来说，可以用for…in循环语句，从其中依次取出数据的对象，就是可迭代对象。例如，列表、元组、字典、字符串都是可迭代对象。整数、浮点数...]]></description><category></category></item><item><title><![CDATA[Python 爬虫 学习之路（四）使用google浏览器调试查找js加密解密]]></title><link>https://blog.youkuaiyun.com/dmguying/article/details/104252578</link><guid>https://blog.youkuaiyun.com/dmguying/article/details/104252578</guid><author>dmguying</author><pubDate>Mon, 10 Feb 2020 22:08:37 +0800</pubDate><description><![CDATA[概述
常用的三种处理js的方式：

1、用selenium ，模拟浏览器
2、用可以执行js代码的库 来执行关键的js代码
3、找到js的执行规则，分析加密规则，用python的代码来模拟（最优解）

查找js的执行规则
1、爬虫爬数据时，提交post请求，其中一个参数由js加密生成如下：

如何确定s是哪个js文件定义的，用如下方法：

如上图所示，s =bb(cc.m(ss+tt))。很明显s...]]></description><category></category></item><item><title><![CDATA[Python 爬虫 学习之路（三）scrapy框架]]></title><link>https://blog.youkuaiyun.com/dmguying/article/details/104225769</link><guid>https://blog.youkuaiyun.com/dmguying/article/details/104225769</guid><author>dmguying</author><pubDate>Mon, 10 Feb 2020 11:46:53 +0800</pubDate><description><![CDATA[Scrapy初识

概述


scrapy是一个为了能够爬取网站数据，提取数据结构而编写的一个应用框架只需要写少量的代码就能实现快速抓取。scrapy使用了twisted 异步网络框架，可以加快我们的下载速度。



工作流程，如下图所示




windows 下安装scrapy


直接使用命令：python -m pip install scrapy -i https://pypi.doub...]]></description><category></category></item><item><title><![CDATA[Python 爬虫 学习之路（二）数据提取]]></title><link>https://blog.youkuaiyun.com/dmguying/article/details/104130106</link><guid>https://blog.youkuaiyun.com/dmguying/article/details/104130106</guid><author>dmguying</author><pubDate>Sat, 08 Feb 2020 14:54:38 +0800</pubDate><description><![CDATA[提取json格式数据
引入json模块
import json

使用loads和dumps函数转换：
json_data = '{"kw":"美女","fr":"search","ie":"utf-8","pn":"150"}'
print(type(json_data))# str 类型的
dict_data = json.loads(json_data)
print(type(dict_da...]]></description><category></category></item><item><title><![CDATA[swoole学习之路（三）进程模型]]></title><link>https://blog.youkuaiyun.com/dmguying/article/details/104124795</link><guid>https://blog.youkuaiyun.com/dmguying/article/details/104124795</guid><author>dmguying</author><pubDate>Fri, 31 Jan 2020 19:07:00 +0800</pubDate><description><![CDATA[进程及线程

进程


所谓进程其实就是操作系统中一个正在运行的程序，我们在一个终端当中，通过php，运行一个php文件，这个时候就相当于我们创建了一个进程，这个进程会在系统中驻存，申请属于它自己的内存空间系统资源并且运行相应的程序
对于一个进程来说，它的核心内容分为两个部分，一个是它的内存，这个内存是这进程创建之初从系统分配的，它所有创建的变量都会存储在这一片内存环境当中
一个是它的上下文环境。...]]></description><category></category></item><item><title><![CDATA[swoole学习之路（二）服务端和客户端]]></title><link>https://blog.youkuaiyun.com/dmguying/article/details/104114824</link><guid>https://blog.youkuaiyun.com/dmguying/article/details/104114824</guid><author>dmguying</author><pubDate>Fri, 31 Jan 2020 15:27:10 +0800</pubDate><description><![CDATA[同步和异步

概念


同步与异步的重点在消息通知的方式上，也就是调用结果通知的方式。
同步: 当一个同步调用发出去后，调用者要一直等待调用结果的通知后，才能进行后续的执行。
异步: 当一个异步调用发出去后，调用者不能立即得到调用结果的返回。
生活中的例子：
同步买奶茶：小明点单交钱，然后等着拿奶茶；
异步买奶茶：小明点单交钱，店员给小明一个小票，等小明奶茶做好了，再来取。


服务端

//创建...]]></description><category></category></item><item><title><![CDATA[Python 爬虫 学习之路（一）Request模块]]></title><link>https://blog.youkuaiyun.com/dmguying/article/details/104097189</link><guid>https://blog.youkuaiyun.com/dmguying/article/details/104097189</guid><author>dmguying</author><pubDate>Wed, 29 Jan 2020 18:41:33 +0800</pubDate><description><![CDATA[爬虫的基础知识

概念：网络爬虫（又被称为网页蜘蛛，网络机器人）就是模拟客户端发送网络请求，接收请求响应，一种按照一定的规则，自动地抓取互联网信息的程序。原则上,只要是浏览器(客户端)能做的事情，爬虫都能够做
分类：爬虫分为通用爬虫和聚焦爬虫
通用爬虫 ：通常指搜索引擎的爬虫
聚焦爬虫 ：针对特定网站的爬虫

http和https

http超文本传输协议，是基于C/S架构进行通信的协议，运行在在...]]></description><category></category></item><item><title><![CDATA[Python学习之路（八）正则表达式]]></title><link>https://blog.youkuaiyun.com/dmguying/article/details/104069480</link><guid>https://blog.youkuaiyun.com/dmguying/article/details/104069480</guid><author>dmguying</author><pubDate>Wed, 22 Jan 2020 13:43:13 +0800</pubDate><description><![CDATA[概念
开始

]]></description><category></category></item><item><title><![CDATA[Python学习之路（七）文件读写、异常处理、包和模块]]></title><link>https://blog.youkuaiyun.com/dmguying/article/details/104069465</link><guid>https://blog.youkuaiyun.com/dmguying/article/details/104069465</guid><author>dmguying</author><pubDate>Wed, 22 Jan 2020 13:41:10 +0800</pubDate><description><![CDATA[异常处理
文件读写
包和模块

]]></description><category></category></item><item><title><![CDATA[Python学习之路（六）类和对象]]></title><link>https://blog.youkuaiyun.com/dmguying/article/details/104067859</link><guid>https://blog.youkuaiyun.com/dmguying/article/details/104067859</guid><author>dmguying</author><pubDate>Wed, 22 Jan 2020 09:58:50 +0800</pubDate><description><![CDATA[类和对象概述

]]></description><category></category></item><item><title><![CDATA[Python学习之路（五）函数、闭包、匿名函数及装饰器]]></title><link>https://blog.youkuaiyun.com/dmguying/article/details/104067852</link><guid>https://blog.youkuaiyun.com/dmguying/article/details/104067852</guid><author>dmguying</author><pubDate>Wed, 22 Jan 2020 09:57:46 +0800</pubDate><description><![CDATA[函数定义

]]></description><category></category></item><item><title><![CDATA[B-树、B+树、Hash、二分查找]]></title><link>https://blog.youkuaiyun.com/dmguying/article/details/104001313</link><guid>https://blog.youkuaiyun.com/dmguying/article/details/104001313</guid><author>dmguying</author><pubDate>Thu, 16 Jan 2020 11:07:17 +0800</pubDate><description><![CDATA[数据结构和算法

]]></description><category></category></item><item><title><![CDATA[css3 溢出隐藏，显示3个点]]></title><link>https://blog.youkuaiyun.com/dmguying/article/details/103742641</link><guid>https://blog.youkuaiyun.com/dmguying/article/details/103742641</guid><author>dmguying</author><pubDate>Sat, 28 Dec 2019 11:22:07 +0800</pubDate><description><![CDATA[一行溢出隐藏
white-space:nowrap;
text-overflow:ellipsis;
overflow:hidden;

多行文本溢出隐藏
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp:2;###数字是几 就是几行溢出隐藏
-webkit-box-orient:...]]></description><category></category></item><item><title><![CDATA[Python学习之路（四）数据类型]]></title><link>https://blog.youkuaiyun.com/dmguying/article/details/103643092</link><guid>https://blog.youkuaiyun.com/dmguying/article/details/103643092</guid><author>dmguying</author><pubDate>Sat, 28 Dec 2019 09:41:28 +0800</pubDate><description><![CDATA[再识变量
1、变量就是存放数据的容器。我们定义一个变量其实就是把这个数据放在这个容器里面。
2、python的数据类型

整型 int
浮点型 float
布尔型 bool。True真，False假。注意是首字母大写
字符串 str
列表 list
元组 tuple
字典 dictionary
集合 set
使用type 判断数据类型：type(x)判断x变量的数据类型

a = '123'
b ...]]></description><category></category></item><item><title><![CDATA[Python学习之路（三）流程控制]]></title><link>https://blog.youkuaiyun.com/dmguying/article/details/103642021</link><guid>https://blog.youkuaiyun.com/dmguying/article/details/103642021</guid><author>dmguying</author><pubDate>Sat, 21 Dec 2019 12:13:55 +0800</pubDate><description><![CDATA[if判断语句
1、简单if语句
score = int(input('请输入你的成绩：'))
if score &gt; 60 :
    print('考试及格')
else :
    print('考试不及格')

2、多个 elif 判断
score = int(input('请输入你的成绩：'))
if score &gt; 90 :
    print('你是个好学生')
elif s...]]></description><category></category></item><item><title><![CDATA[Python学习之路（二）变量及运算符]]></title><link>https://blog.youkuaiyun.com/dmguying/article/details/103639702</link><guid>https://blog.youkuaiyun.com/dmguying/article/details/103639702</guid><author>dmguying</author><pubDate>Sat, 21 Dec 2019 00:22:12 +0800</pubDate><description><![CDATA[python 的变量
1、定义

直接使用 '= '定义，变量名 = 变量值，例如：


user_name = ‘python’

2、类型

变量分为数字型和非数字型
数字型：整型、浮点型、布尔型（bool）
非数字型：字符串、列表、元组、字典、集合等

3、命名

变量标识符由 字母、数字、下划线组成
不能以数字开头
不能喝关键字重名

4、 命名规则

区分大大小写、 =（赋值号） 左右各...]]></description><category></category></item><item><title><![CDATA[mysql存储引擎]]></title><link>https://blog.youkuaiyun.com/dmguying/article/details/103504265</link><guid>https://blog.youkuaiyun.com/dmguying/article/details/103504265</guid><author>dmguying</author><pubDate>Thu, 12 Dec 2019 10:41:43 +0800</pubDate><description><![CDATA[myslql 存储引擎对照表：

二者的区别：
1、事务

MyISAM是非事务安全的
而InnoDB是事务安全的

2、锁

InnoDB采用MVCC来支持高并发，并且实现了4个标准的隔离级别。
InnoDB锁的粒度最小为行级锁。
MyISAM只支持对整张表加锁。

3、索引

MyISAM支持全文类型索引。而InnoDB不支持全文索引
MyISAM引擎的索引数据在磁盘上是按照顺序存储的。Inn...]]></description><category></category></item></channel></rss>