- 博客(97)
- 资源 (2)
- 收藏
- 关注
原创 Python库 - 批量生成数据的库Faker
Python库 - 批量生成数据的库Faker一:场景二:Faker是什么三:安装四:Faker的使用4.1 可选择的文化信息4.2 地理信息类4.3 基础信息类4.4 个人账户信息类4.5 网络基础信息类4.6 浏览器信息类4.7 文件信息类4.8 数字类4.9 文本、加密类4.10 时间信息类4.11 集合信息类4.12 档案信息和简档信息4.13 其他类别一:场景在软件需求、开发、测试过程中,有时候需要使用一些测试数据,针对这种情况,我们一般要么使用已有的系统数据,要么需要手动制造一些数据。由于
2020-11-18 15:29:29 877
原创 Kubernetes集群搭建之软路由的安装
Kubernetes集群搭建之软路由的安装一:新建虚拟机二:安装过程三:后台的配置一:新建虚拟机软件使用VMware-Workstation-15,系统选择win10X64,固件类型选择BIOS,如下图网络类型选择仅主机模式(共享网卡上网)虚拟磁盘选择IDE,选择其他的会报错二:安装过程编辑虚拟机设置,CD/DVD选择老毛桃PE并开启此虚拟机开机选择第一项待进入桌面后,将CD/DVD换为封装了koolshare软路由的镜像,点击确定后,打开此电脑(无需重启)打开我的电脑,继续打
2020-10-29 17:46:00 1027 2
原创 Python爬虫之Scrapy框架的使用(二)
Python爬虫之Scrapy框架的使用(二)一:创建爬虫二:settings配置文件三:创建启动文件四:爬虫文件内容五:item文件六:pipelines文件七:使用scrapy中的ItemLoader提取数据7.1 爬虫文件内容7.2 input_processor和output_processor7.3 重用和扩展ItemLoaders一:创建爬虫scrapy startproject ArticleSpidercd ArticleSpiderscrapy genspider cnblogs
2020-09-06 15:22:15 539
原创 彻底搞清楚unicode和utf8编码
彻底搞清楚unicode和utf8编码一:字符串编码二:Python中的encode()与decode()一:字符串编码我们知道,计算机是以二进制为单位的,也就是说计算机只识别0和1,也就是我们平时在电脑上看到的文字,只有先变成0和1,计算机才会识别它的意思。这种数据和二进制的转换规则就是编码。计算机的发展中,有ASCII码,GBK,Unicode,utf-8编码。计算机只能处理数字,文本转换为数字才能处理。计算机中8bit作为一个字节(byte),所以一个字节能表示最大的数字就是255计算机是美
2020-09-05 13:17:45 898
原创 使用UltraISO制作Ubuntu16.04 U盘启动盘
使用UltraISO制作Ubuntu16.04 U盘启动盘一:ubuntu系统下载一:ubuntu系统下载从Ubuntu官网下载系统的iso文件用来制作的U盘需要是FAT32格式的,可以通过格式化U盘更改
2020-09-04 14:52:28 2405
原创 vsftpd容器化部署
vsftpd容器化部署用到的docker image:https://hub.docker.com/r/fauria/vsftpddocker-compose文件内容:root@ginvip:~/docker/vsftp# cat docker-compose.ymlvsftpd: container_name: vsftpd image: fauria/vsftpd:latest ports: - "21:21" - "20:20" - "21100-211
2020-08-21 16:19:22 377
原创 Python之Celery异步任务队列
Python之Celery异步任务队列一:Celery简介二:celery适用于那些场景三:celery特点四:celery工作原理五:Celery与django结合一:Celery简介Celery 官方文档英文版:http://docs.celeryproject.org/en/latest/index.htmlCelery 官方文档中文版:http://docs.jinkan.org/docs/celeryCelery 是一个由 Python 编写的简单、灵活、可靠的用来处理大量信息的分布式系
2020-08-15 15:30:44 828 1
原创 VMware安装OpenWrt19.07.0
VMware安装OpenWrt19.07.0一:安装准备二:安装openwrt三:启动openwrt四:替换源五:安装包一:安装准备准备一个Linux发行版的虚拟机系统,Ubuntu、Centos都可以,这里使用的是Centos7.5因为笔者这里要求安装python3.7以上版本,而openwrt19以下的版本默认安装的是3.7以下的版本,所以这里选择安装OpenWrt19.07.0版本进入Linux系统,使用终端操作以下步骤:yum install qemu-img.x86_64wget ht
2020-07-27 11:23:13 3907 1
原创 Python基础之面向对象进阶
Python基础之面向对象进阶一:面向对象之组合二:单例设计模式2.1 __ new__方法一:面向对象之组合组合即在类中封装另一个类的对象。组合的意义:让类的对象与另一个类的对象产生关系,类与类之间产生关系。让两个类之间产生关系:一是继承,二是组合。class GameRole: def __init__(self, nickname, ad, hp): self.nickname = nickname self.ad = ad # 血值
2020-07-20 10:11:55 277
原创 Node项目容器化部署
Node项目容器化部署一:Dockerfile二:构建镜像三:启动容器四:进入alpine容器一:DockerfileFROM node:8.11.1-alpineRUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositoriesRUN apk update && \ apk add --no-cache python2 make gcc g++ linux-headers &
2020-07-10 19:57:02 1267
原创 gitlab容器:could not read block 0 in file “base/16385/2702“
gitlab容器:could not read block 0 in file "base/16385/2702"一:报错场景说明二:解决步骤三:后续问题一:报错场景说明使用docker在局域网搭建gitlab服务,一直运行正常。有天突然断电,gitlab容器再启动时一直显示unhealthy状态,查看日志报如下错,结果是gitlab网页无法访问,所有仓库资源连接都变成502。failed: ERROR: could not read block 0 in file "base/16385/2702
2020-07-07 18:54:03 2463
原创 Python数据分析:matplotlib模块
Python数据分析:matplotlib模块一:matplotlib模块简介二:初始matplotlib2.1 简单使用2.2 设置图片大小2.3 设置轴刻度2.4 添加描述信息2.5 小案例一:matplotlib模块简介什么是matplotlib?最流行的python底层绘图库,主要做数据可视化图表,名字取材于MATLAB,模仿MATLAB构建为什么要学习matplotlib模块?能将数据进行可视化,更直观的呈现使数据更加客观,更具说服力二:初始matplotlib下面通过一个小实
2020-07-03 19:04:12 514
原创 Python爬虫之高性能异步爬虫
Python爬虫之高性能异步爬虫一:异步爬虫的方式二:线程池的基本使用三:线程池案例四:协程的使用4.1 初识协程4.2 多任务异步协程五:aiohttp异步网络请求模块5.1 安装aiohttp模块5.2 aiohttp案例一:异步爬虫的方式1:多线程,多进程(不建议)好处:可以为相关阻塞的操作单独开启线程或者进程,阻塞操作就可以异步执行弊端:无法无限制的开启多线程或者多进程2:线程池,进程池(适当的使用)好处:可以降低系统对进程或者线程创建和销毁的一个频率,从而很好的降低系统的开销弊端:池
2020-06-29 09:17:37 1278
原创 Python爬虫之PyQuery模块
Python爬虫之PyQuery模块一:PyQuery简介二:初始化2.1 字符串的初始化2.2 URL初始化2.3 文件初始化三:基本CSS选择器3.1 查找子节点3.2 查找父节点3.3 查找兄弟节点四:遍历五:获取信息5.1 获取属性5.2 获取文本六:节点操作6.1 addClass和removeClass6.2 attr、text和html6.3 remove()七:其他操作方法一:PyQuery简介pyquery库是jQuery的Python实现,能够以jQuery的语法来操作解析 HTML
2020-06-24 14:57:58 635
原创 Linux shell中的wait命令的使用
Linux shell中的wait命令的使用一:wait命令作用二:使用格式三:举例3.1 案例一3.2 案例二:函数中使用wait3.3 案例三3.4 案例四四:串行执行与并行执行4.1 串行执行4.2 并行执行4.3 串行与并行执行效率对比一:wait命令作用wait是用来阻塞当前进程的执行,直至指定的子进程执行结束后,才继续执行。使用wait可以在bash脚本“多进程”执行模式下,起到一些特殊控制的作用。二:使用格式wait [进程号 或 作业号]eg:wait 23 or wait
2020-06-06 17:01:50 20728 2
原创 Shell中的数组应用
Shell中的数组应用一:shell数组的定义二:获取数组元素三:分片访问四:删除操作五:数组遍历一:shell数组的定义使用括号定义数组,数组元素间用空格来分隔array=(1 "hello man" a) # =号两边不能有空格,元素数据类型可以不一致echo ${array[*]} # 输出数组的所有元素nums=(29 100 13 8 91 44)nums[6]=898 # 动态添加元素echo ${nums[*]}nums=(172.17.2.32172.1
2020-06-03 15:46:04 376
原创 Python爬虫之CrawlSpider爬虫
Python爬虫之CrawlSpider爬虫一:CrawlSpider爬虫介绍二:CrawlSpider相关基础2.1 创建CrawlSpider爬虫2.2 LinkExtractors链接提取器2.3 Rule规则类三:CrawlSpider实例3.1 创建项目及爬虫3.2 定义要爬取的url规则3.3 定义要保存的数据字段3.4 保存爬取到的数据四:CrawlSpider总结一:CrawlSpider爬虫介绍Scrapy框架中分两类爬虫,Spider类和CrawlSpider类。在Python爬虫之
2020-05-19 19:58:15 877
原创 Python爬虫之Scrapy框架的使用(一)
Python爬虫之Scrapy框架架构一:scrapy框架介绍1.1 Scrapy框架模块功能1.2 scrapy架构图1.3 安装scrapy二:scrapy框架的使用2.1 创建scrapy项目2.2 settings配置文件配置一:scrapy框架介绍写一个爬虫,需要做很多的事情。比如:发送网络请求、数据解析、数据存储、反反爬虫机制(更换ip代理、设置请求头等)、异步请求等。这些工作如果每次都要自己从零开始写的话,比较浪费时间。因此Scrapy把一些基础的东西封装好了,在他上面写爬虫可以变的更加的
2020-05-19 17:20:12 819
原创 Python爬虫之selenium
Python爬虫之selenium一:Selenium介绍二:selenium常用操作2.1 关闭页面2.2:定位元素2.3:操作表单元素2.4 行为链2.5 Cookie操作2.6 页面等待2.7 切换页面2.8 设置代理ip2.9 WebElement元素2.10 无界面浏览器一:Selenium介绍Selenium相当于是一个机器人。可以模拟人类在浏览器上的一些行为,自动处理浏览器上的一些行为,比如点击,填充数据,删除cookie等。chromedriver是一个驱动Chrome浏览器的驱动程序,
2020-05-10 12:08:35 676
原创 Python爬虫之lxml模块
Python爬虫之lxml模块一:lxml模块简介二:xpath常用规则2.1:读取文件解析节点2.2 读取HTML文件进行解析2.3 获取所有节点2.4 获取子节点2.5 获取父节点2.6 属性匹配2.7 文本获取2.8 属性获取2.9 属性多值匹配2.10 多属性匹配2.11 XPath中的运算符2.12 按序选择2.13 节点轴选择三:xpath实例一:lxml模块简介lxml是python的一个解析库,支持HTML和XML的解析,支持XPath解析方式,而且解析效率非常高XPath,全称XML
2020-05-09 16:49:34 2952
原创 Python基础之多任务
Python基础之多任务一:多任务概念二:线程2.1 使用threading模块2.2 查看线程信息2.3 线程执行代码的封装2.4 共享全局变量2.5 多线程的参数传递2.6 同步2.7 互斥锁(解决资源竞争)2.8 死锁2.9 semaphore(信号量)2.10 案例-多任务版udp聊天器2.11 join()方法2.12 守护线程2.13 Events2.13 queue队列三:进程3.1 进程以及状态3.2 进程的创建3.3 进程线程的对比3.4 进程间的通信-Queue3.5 进程池3.6 多进
2020-05-09 11:27:32 331
原创 Python基础之操作MongoDB数据库
Python基础之操作MongoDB数据库一:docker中部署MongoDB二:MongoDB介绍三:Mongodb数据类型四:MongoDB基本操作命令五:python操作mongodb5.1 安装pymongo5.2 插入数据5.3 查询数据5.4 更新数据5.5 删除数据一:docker中部署MongoDB# mongodb官方docker见https://hub.docker.com/_/mongo用到的文件如下:root@eth:~/docker/mongodb# tree.├─
2020-05-08 17:42:25 481
原创 Python基础之操作mysql数据库
Python基础之操作mysql数据库一:安装驱动程序二:数据库操作2.1 连接数据库2.2 建库2.2 建表2.3 插入表数据2.4 查询2.5 删除2.6 更新一:安装驱动程序Pythons要想操作Mysql,必须要有一个中间件,或者叫做驱动程序。驱动程序有很多,如:mysqldb, mysqlclient, pymysql等。这里选择使用pymysqlpip install pymys...
2020-05-08 15:45:31 378
原创 Python基础之正则表达式
Python基础之正则表达式一:正则表达式二:正则常用匹配规则2.1 re.match()2.2 re.search()2.3 re.findall()2.4 re.sub()2.5 re.split()三:贪婪和非贪婪一:正则表达式二:正则常用匹配规则2.1 re.match()re.match(正则表达式,要匹配的字符串,flags)# match从头开始匹配# re.ma...
2020-05-08 09:11:34 278
原创 Python爬虫beautifulsoup4模块
Python爬虫beautifulsoup4模块一:beautifulsoup4模块介绍二:模块安装三:节点选择器四:方法选择器五:CSS选择器六:tag修改方法一:beautifulsoup4模块介绍Beautiful Soup是python的一个HTML或XML的解析库,我们可以用它来方便的从网页中提取数据,它拥有强大的API和多样的解析方式。Beautiful Soup的三个特点:...
2020-05-05 16:18:24 629
原创 Python爬虫中的去重处理
Python爬虫中的去重处理一:Python爬虫去重应用场景及基本原理二:基于信息摘要算法的去重2.1 信息摘要hash算法去重方案实现2.2 去重过滤器基类实现2.3 基于set的去重过滤器2.4 基于redis无序集合的去重过滤器2.5 基于mysql的去重过滤器三:基于simhash算法的去重四:布隆过滤器原理与实现一:Python爬虫去重应用场景及基本原理爬虫中什么业务需要使用去重?...
2020-05-03 16:54:19 4369 2
原创 Python基础之文件操作
Python的文件IO一:打开操作二:上下文管理三:StringIO与BytesIO3.1 StringIO3.2 BytesIO3.3 file-like对象四:shutil模块4.1 copy一:打开操作def open(file, mode='r', buffering=None, encoding=None, errors=None, newline=None, closefd=Tru...
2020-05-01 17:25:52 315
原创 基于docker的lanproxy内网穿透服务
基于docker的lanproxy内网穿透服务一:什么是内网穿透二:什么是lanproxy三:穿透原理四:环境说明五:lanproxy服务端部署六:nginx反向代理配置域名七:lanproxy web界面配置七:lanproxy客户端部署一:什么是内网穿透内网穿透,即NAT穿透,网络连接时术语,计算机是局域网内时,外网与内网的计算机节点需要连接通信,有时就会出现不支持内网穿透。简单来说,就...
2020-04-28 16:14:12 1215
原创 Python爬虫一:利用docker搭建Python开发环境
利用docker搭建Python开发环境一:环境准备二:开启docker的远程连接三:pycharm中配置docker环境3.1 pycharm调用出docker工具栏3.2 连接远程主机上的docker3.3 配置python解释器3.4 配置代码自动上传与运行3.5 配置Dockerfile3.6 配置docker-compose一:环境准备IP地址操作系统安装软件1...
2020-04-26 16:07:01 7875 1
原创 ELK日志收集系统(三):docker-compose部署ELK单机与集群
ELK日志收集系统(三):docker-compose部署ELK单机与集群一:安装docker-compose二:docker-compose小型web案例三:单机环境ELK系统搭建四:多主机ELK部署4.1 开启docker swarm4.2 启动集群一:安装docker-compose官方安装文档见:docker-compose install安装方式一:# 注意下面url中的dock...
2020-04-26 13:54:34 1275
原创 Docker(六):企业级私有仓库
Docker企业级私有仓库一:Harbor介绍二:Harbor 架构介绍三:安装harbor一:Harbor介绍1、容器应用的开发和运行离不开可靠的镜像管理。从安全和效率等方面考虑,部署在私有环境内的 Registry 是非常必要的。2、Harbor 是由 VMware 公司中国团队为企业用户设计的 Registry server 开源项目,包括了权限管理(RBAC)、LDAP、审计、管理界...
2020-04-16 17:01:17 331
原创 gitlab容器化部署
docker部署gitlab一:手动安装gitlab二:gitlab容器三:备份与恢复3.1 备份gitlab数据3.2 恢复gitlab数据四:找回root密码一:手动安装gitlab官方文档见:https://about.gitlab.com/install/yum install -y curl policycoreutils-python openssh-serverwget ...
2020-04-13 14:03:52 1080
原创 自动化运维系列三:Jenkins权限管理
自动化运维系列三:Jenkins权限管理一:权限控制插件二:权限配置一:权限控制插件Role Strategy Plugin插件可以对构建的项目进行授权管理,让不同的用户管理不同的项目,将不同环境的权限进行区分。该插件可以很灵活的根据需求来进行划分权限,包括正则匹配等插件名称:Role-based Authorization Strategy# 安装完上面的插件后,回到Manage Jen...
2020-04-11 09:56:44 849
原创 自动化运维系列二:Jenkins与gitlab实战
自动化运维系列二:Jenkins与gitlab实战一:Jenkins Job介绍二:使用Maven构建Java应用程序一:Jenkins Job介绍Job 代表一个任务或者项目;可配置与可执行;执行后的记录称之为Build;日志监控与记录;所有文件集中保存Freestyle Job:需要在页面添加模块配置项与参数完成配置每个JOB仅能实现一个开发功能无法将配置代码化,不利于JOB配置...
2020-04-10 21:25:54 887 1
原创 自动化运维系列一:docker部署jenkins与gitlab
自动化运维系列一:docker部署jenkins与gitlab一:传统网站部署的流程二:目前主流网站部署的流程三:jenkins持续集成3.1 持续集成意义3.2 持续集成组件四:持续集成的部署4.1 环境准备4.2 docker部署gitlab4.3 docker部署jenkins一:传统网站部署的流程传统的网站部署,在运维过程中,网站部署是运维的工作之一,网站部署的流程大致分为:需求分析...
2020-04-09 10:29:30 1752 1
原创 自动化运维之Ansible实战(一)
Ansible自动化运维一:Ansible概述二:常用自动化运维工具三:安装准备3.1 环境准备3.2 安装3.3 Ansible配置文件3.4 Ansible-doc3.5 Ansible命令参数四:主机清单(inventory)4.1 基于密码管控主机4.2 基于密钥管控主机4.3 主机匹配4.4 Ansible命令执行过程五:常见模块实战5.1 command模块5.2 shell模块5.3...
2020-04-03 17:37:15 1166
原创 Python基础之paramiko模块
Python paramiko模块一:paramiko介绍1.1 paramiko安装1.2 paramiko包括两个核心的组件1.3 paramiko有几个基础的名词二:SSH连接步骤三:paramiko连接远程服务器3.1 SSHClicent常用方法3.2 使用密码连接3.3 从配置文件读取参数3.4 使用秘钥连接四:paramiko上传下载五:paramiko进行封装一:paramiko...
2020-04-01 19:26:10 773
原创 Python基础之Python-nmap模块
Python-nmap模块一:nmap二:基本扫描策略2.1 无任何附加参数2.2 冗余2.3 指定端口号2.4 操作系统侦测2.5 只进行主机发现2.6 跳过主机发现2.7 扫描和版本号侦测2.8 UDP 扫描三:绕过防火墙3.1 利用掩体3.2 禁用 ping3.3 IP地址伪装3.4 空闲扫描3.5 指定网卡进行扫描3.6 限制扫描时间3.7 指定源 IP 地址3.8 指定源主机端口3.9 ...
2020-03-30 16:56:40 11772 1
原创 nginx安装第三方模块nginx_upstream_check_module
nginx安装第三访模块nginx_upstream_check_module一:nginx后端健康检查二:nginx被动检查三:nginx主动检查3.1 安装nginx_upstream_check_module3.2 模块配置四:docker中安装一:nginx后端健康检查nginx自带健康检查的缺陷:Nginx只有当有访问时后,才发起对后端节点探测。如果本次请求中,节点正好出现故障...
2020-03-29 17:59:32 15612 2
原创 acme.sh申请Let‘s encrypt泛域名证书Docker化部署
Docker部署acme.sh申请Let's encrypt泛域名证书一:手动安装acme.sh二:申请证书2.1 DNSAPI申请方式2.2 DNS手动校验方式2.3 HTTP校验方式申请2.4 无80端口申请证书2.5 证书续签三:Docker部署acme.sh申请证书3.1 安装docker-compose3.2 启动容器3.3 申请证书3.4 设置 crontab 任务自动续签一:手动安...
2020-03-27 21:46:56 5564 1
FastDFS分布式文件系统容器化部署文件.zip
2020-09-04
nginx_upstream_check.tar.gz
2020-09-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人