<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[flyingkitty]]></title><description><![CDATA[。。]]></description><link>https://blog.youkuaiyun.com/flyingkitty_</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; flyingkitty_]]></copyright><item><title><![CDATA[7-多线程爬虫糗事百科]]></title><link>https://blog.youkuaiyun.com/flyingkitty_/article/details/105882464</link><guid>https://blog.youkuaiyun.com/flyingkitty_/article/details/105882464</guid><author>flyingkitty_</author><pubDate>Fri, 01 May 2020 21:00:03 +0800</pubDate><description><![CDATA[7-多线程爬虫糗事百科
简介
多线程 thread 在 Python 里面被称作鸡肋的存在！不建议使用，多是使用多进程，虽然不建议使用，还是做个笔记吧。

实现线程的两种方式
直接利用函数创建多线程
import _thread
import time


# 为线程定义函数
def print_time(thread_name, delay):
    count = 0
    while c...]]></description><category></category></item><item><title><![CDATA[6-JSON的处理]]></title><link>https://blog.youkuaiyun.com/flyingkitty_/article/details/105882445</link><guid>https://blog.youkuaiyun.com/flyingkitty_/article/details/105882445</guid><author>flyingkitty_</author><pubDate>Fri, 01 May 2020 20:59:16 +0800</pubDate><description><![CDATA[【Python3网络爬虫】6-JSON的处理
简介
JSON，全称为JavaScript Object Notation, 也就是JavaScript对象标记，它通过对象和数组的组合来表示数据，构造简洁但是结构化程度非常高，是一种轻量级的数据交换格式
Python中的json模块
dumps、dump、loads、load

json.loads()

把Json格式字符串解码转换成Python对...]]></description><category></category></item><item><title><![CDATA[5-BeautifulSoup的使用]]></title><link>https://blog.youkuaiyun.com/flyingkitty_/article/details/105882432</link><guid>https://blog.youkuaiyun.com/flyingkitty_/article/details/105882432</guid><author>flyingkitty_</author><pubDate>Fri, 01 May 2020 20:58:36 +0800</pubDate><description><![CDATA[【Python3网络爬虫】5-BeautifulSoup的使用
简介

BeautifulSoup最主要的功能是从网页抓取数据，Beautiful Soup自动将输入文档转换为Unicode编码，输出文档转换为utf-8编码。BeautifulSoup支持Python标准库中的HTML解析器,还支持一些第三方的解析器，如果我们不安装它，则 Python 会使用 Python默认的解析器，lxml ...]]></description><category></category></item><item><title><![CDATA[4-正则运用之爬取糗事百科]]></title><link>https://blog.youkuaiyun.com/flyingkitty_/article/details/105882425</link><guid>https://blog.youkuaiyun.com/flyingkitty_/article/details/105882425</guid><author>flyingkitty_</author><pubDate>Fri, 01 May 2020 20:57:58 +0800</pubDate><description><![CDATA[【Python3网络爬虫】4-正则运用之爬取糗事百科
正则表达式实战巩固


import requests
from fake_useragent import UserAgent
import re

url = 'https://www.qiushibaike.com/text/page/{}/'
headers = {
    'User-Agent': UserAgent().chrom...]]></description><category></category></item><item><title><![CDATA[3-正则表达式]]></title><link>https://blog.youkuaiyun.com/flyingkitty_/article/details/105882418</link><guid>https://blog.youkuaiyun.com/flyingkitty_/article/details/105882418</guid><author>flyingkitty_</author><pubDate>Fri, 01 May 2020 20:57:22 +0800</pubDate><description><![CDATA[【Python3网络爬虫】3-正则表达式
re.match函数
re.match 尝试从字符串的起始位置匹配一个模式，如果不是起始位置匹配成功的话，match()就返回none。
函数语法：
re.match(pattern, string, flags=0)


函数参数说明：




参数
描述




pattern
匹配的正则表达式


string
要匹配的字符串。


flags
标志...]]></description><category></category></item><item><title><![CDATA[2-Requests库的使用]]></title><link>https://blog.youkuaiyun.com/flyingkitty_/article/details/105882392</link><guid>https://blog.youkuaiyun.com/flyingkitty_/article/details/105882392</guid><author>flyingkitty_</author><pubDate>Fri, 01 May 2020 20:55:47 +0800</pubDate><description><![CDATA[【Python3网络爬虫】2-Requests库的使用
介绍

对了解爬虫的一些基本理念，掌握爬虫爬取的流程后，我们需要学习一些更加高级的工具和内容来方便我们的爬取，本节主要介绍requests库的基本用法


安装
pip insatll requests

基本请求
import requests
# requests.api
url = "http://www.baidu.com"
requ...]]></description><category></category></item><item><title><![CDATA[1-urllib库的使用]]></title><link>https://blog.youkuaiyun.com/flyingkitty_/article/details/105882358</link><guid>https://blog.youkuaiyun.com/flyingkitty_/article/details/105882358</guid><author>flyingkitty_</author><pubDate>Fri, 01 May 2020 20:54:06 +0800</pubDate><description><![CDATA[【Python3网络爬虫】1-urllib库的使用
内置模块介绍
Python内置的HTTP请求库，包含四个模块


error异常处理模块，如果出现请求错误，我们可以捕获这些异常，然后进行重试或其他操作以保证程序不会意外终止。


parse一个工具模块，提供了许多URL处理方法，比如拆分、解析、合并等。



request它是最基本的HTTP请求模块，可以用来模拟发送请求。就像在浏览器里输入...]]></description><category></category></item><item><title><![CDATA[数据库技术构成]]></title><link>https://blog.youkuaiyun.com/flyingkitty_/article/details/76206068</link><guid>https://blog.youkuaiyun.com/flyingkitty_/article/details/76206068</guid><author>flyingkitty_</author><pubDate>Fri, 25 Oct 2019 15:11:38 +0800</pubDate><description><![CDATA[数据库系统，由硬件和软件两部分构成。硬件，主要用于存储数据库中的数据，包括计算机、存储设备等。软件部分主要包括DBMS（数据库管理系统）、支持DBMS运行的操作系统，以及支持多种语言进行应用开发的访问数据等。



1、数据库系统

数据库系统由3个主要组成部分：

·数据库（DataBase System）：用于存储数据的地方。

·数据库管理系统（DataBase Management Sy...]]></description><category></category></item><item><title><![CDATA[享元模式]]></title><link>https://blog.youkuaiyun.com/flyingkitty_/article/details/86597074</link><guid>https://blog.youkuaiyun.com/flyingkitty_/article/details/86597074</guid><author>flyingkitty_</author><pubDate>Fri, 25 Oct 2019 15:11:25 +0800</pubDate><description><![CDATA[享元模式
运用共享技术有效的支持大量细粒度的对象，主要用于减少创建对象的数量，以减少内存占用和提高性能，属于结构型模式。提供了减少对象数量从而改善应用所需的对象结构的方式

使用场景

系统有大量相似对象
需要缓冲池的场景

优点
大大减少对象的创建，降低系统的内存，使效率提高
缺点

提高了系统的复杂度，需要分理出外部状态和内部状态，否则可能会引起线程安全问题
这些类必须有一个工厂对象加以控制
...]]></description><category></category></item><item><title><![CDATA[idea集成docker部署springboot项目]]></title><link>https://blog.youkuaiyun.com/flyingkitty_/article/details/102743302</link><guid>https://blog.youkuaiyun.com/flyingkitty_/article/details/102743302</guid><author>flyingkitty_</author><pubDate>Fri, 25 Oct 2019 15:04:58 +0800</pubDate><description><![CDATA[idea集成docker部署springboot项目
宿主机器/服务器docker配置

配置docker远程连接端口

vi /usr/lib/systemd/system/docker.service

找到 ExecStart，在最后面添加 -H tcp://0.0.0.0:2375


重启docker

systemctl daemon-reload
systemctl start do...]]></description><category></category></item><item><title><![CDATA[HDFS(hadoop分布式文件系统)]]></title><link>https://blog.youkuaiyun.com/flyingkitty_/article/details/90441409</link><guid>https://blog.youkuaiyun.com/flyingkitty_/article/details/90441409</guid><author>flyingkitty_</author><pubDate>Wed, 22 May 2019 12:05:32 +0800</pubDate><description><![CDATA[HDFS(hadoop分布式文件系统)
一、特点

可存储超大文件
一次写入，多次读取
运行在普通廉价的机器

二、不适用场景

低延迟
大量小文件
多用户更新
结构化数据
数据量不大

三、基本命令


打印文件列表（ls）
标准写法： hadoop fs -ls hdfs:/  #hdfs: 明确说明是HDFS系统路径 
 
简写： hadoop fs -ls /   #默认是HDFS系统下的...]]></description><category></category></item><item><title><![CDATA[# centos7安装mysql]]></title><link>https://blog.youkuaiyun.com/flyingkitty_/article/details/89888240</link><guid>https://blog.youkuaiyun.com/flyingkitty_/article/details/89888240</guid><author>flyingkitty_</author><pubDate>Mon, 06 May 2019 18:02:12 +0800</pubDate><description><![CDATA[centos7安装mysql

查看当前安装的mariadb
rpm -qa|grep mariadb
强制删除的当前安装的mariadb
rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64
查看当前安装的mysql
rpm -qa|grep mysql
强制删除安装的mysql
安装mysql

yum -y install mysql...]]></description><category></category></item><item><title><![CDATA[互信ssh登录]]></title><link>https://blog.youkuaiyun.com/flyingkitty_/article/details/89888228</link><guid>https://blog.youkuaiyun.com/flyingkitty_/article/details/89888228</guid><author>flyingkitty_</author><pubDate>Mon, 06 May 2019 18:01:50 +0800</pubDate><description><![CDATA[互信ssh登录
设置hostname

临时设置hostname:hostname [需要改的名称]
永久设置hostname:hostnamectl set-hostname[需要修改的主机名称]

修改映射关系

在所有节点上修改/etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.local...]]></description><category></category></item><item><title><![CDATA[centos设置静态ip地址]]></title><link>https://blog.youkuaiyun.com/flyingkitty_/article/details/89888215</link><guid>https://blog.youkuaiyun.com/flyingkitty_/article/details/89888215</guid><author>flyingkitty_</author><pubDate>Mon, 06 May 2019 18:01:24 +0800</pubDate><description><![CDATA[centos设置静态ip地址

vim /etc/sysconfig/network-scripts/ifcfg-ens33
原文

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6...]]></description><category></category></item><item><title><![CDATA[CENTOS7关闭防火墙和selinux]]></title><link>https://blog.youkuaiyun.com/flyingkitty_/article/details/89888194</link><guid>https://blog.youkuaiyun.com/flyingkitty_/article/details/89888194</guid><author>flyingkitty_</author><pubDate>Mon, 06 May 2019 18:00:35 +0800</pubDate><description><![CDATA[防火墙

CENTOS7查看防火墙状态

firewall-cmd --state


临时停止firewall

syatemctl stop firewalld.service


永久禁止开启启动firewall

systemctl disable firewalld.service

SELinux

查看

getenforce

或者
/usr/sbin/sestatus -v


...]]></description><category></category></item><item><title><![CDATA[Lambda表达式]]></title><link>https://blog.youkuaiyun.com/flyingkitty_/article/details/89425638</link><guid>https://blog.youkuaiyun.com/flyingkitty_/article/details/89425638</guid><author>flyingkitty_</author><pubDate>Sat, 20 Apr 2019 23:24:01 +0800</pubDate><description><![CDATA[Lambda表达式
Ladmaba简介

Lambda表达式可以理解成可传递的匿名函数的一种方式，由参数、箭头和主体组成

Lambada表达式只能配合函数式接口使用，那么什么是函数式接口呢？

函数式接口：只有一个抽象方法的接口，可以用@FunctionalInterface标记


java8设计的几个常见的函数式接口

Predicate

@FunctionalInterface
publ...]]></description><category></category></item><item><title><![CDATA[java实战之行为参数化传递代码]]></title><link>https://blog.youkuaiyun.com/flyingkitty_/article/details/89415732</link><guid>https://blog.youkuaiyun.com/flyingkitty_/article/details/89415732</guid><author>flyingkitty_</author><pubDate>Sat, 20 Apr 2019 12:30:27 +0800</pubDate><description><![CDATA[行为参数化传递代码
行为参数化是一种处理频繁变更需求的软件开发模式
例如现在有一个需求，我们需要筛选出所有的绿色的苹果，我们可以这么去操作
源码
    public static List&lt;Apple&gt; filterGreenApple(List&lt;Apple&gt; inventory){
        List&lt;Apple&gt; result = new Array...]]></description><category></category></item><item><title><![CDATA[虚拟机共享文件，安装vmware tool]]></title><link>https://blog.youkuaiyun.com/flyingkitty_/article/details/87885287</link><guid>https://blog.youkuaiyun.com/flyingkitty_/article/details/87885287</guid><author>flyingkitty_</author><pubDate>Fri, 22 Feb 2019 20:38:38 +0800</pubDate><description><![CDATA[虚拟机共享文件，安装vmware tool


mkdir /mnt/cdrom
将光盘挂载到/mnt/cdrom目录下mount -t iso9660 /dev/cdrom /mnt/cdrom
将名为“VMwareTools-9.2.0-799703.tar.gz”复制到/root目录下，并重新命名为vm.tar.gzcp /mnt/cdrom/VMwareTools-9.2.0-799703...]]></description><category></category></item><item><title><![CDATA[配置网络环境（centos7）]]></title><link>https://blog.youkuaiyun.com/flyingkitty_/article/details/87883760</link><guid>https://blog.youkuaiyun.com/flyingkitty_/article/details/87883760</guid><author>flyingkitty_</author><pubDate>Fri, 22 Feb 2019 18:28:38 +0800</pubDate><description><![CDATA[配置网络环境（centos7）

选择NAT模式

选择 编辑-&amp;gt;虚拟网络编辑器

移除VMnet8
添加如下设置

注意选择nat模式

cd /etc/sysconfig/network-scripts
vi ifcfg/ens33，按如下内容修改

ip addr查看ip
ping 查看网络连接


...]]></description><category></category></item><item><title><![CDATA[外观模式]]></title><link>https://blog.youkuaiyun.com/flyingkitty_/article/details/86597055</link><guid>https://blog.youkuaiyun.com/flyingkitty_/article/details/86597055</guid><author>flyingkitty_</author><pubDate>Tue, 22 Jan 2019 16:35:05 +0800</pubDate><description><![CDATA[外观模式
外观模式（Facade）,他隐藏了系统的复杂性，并向客户端提供了一个可以访问系统的接口。这种类型的设计模式属于结构性模式。为子系统中的一组接口提供了一个统一的访问接口，这个接口使得子系统更容易被访问或者使用。

使用场景

客户端不需要知道系统内部的复杂联系，整个系统只需要提供一个“接待员”即可
定义系统的入口

优点

减少系统相互依赖
提高灵活性
提高了安全性

缺点
不符合开闭原则...]]></description><category></category></item></channel></rss>