自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

寻绾的博客

linux 爱好者

  • 博客(43)
  • 收藏
  • 关注

原创 nginx 根据域名转发本机端口

server {listen 80;listen [::]:80;server_name xxxx.comlocation / {proxy_pass http://127.0.0.1:8080;}}server {listen 80;listen [::]:80;server_name xxxx.comlocation / {proxy_pass http://127.0.0.1:7080;}}

2022-04-19 17:32:14 4311

原创 Uncaught (in promise) NavigationDuplicated: Avoided redundant navigation to current location: “/“

解决办法:将如下代码加入到路由设置文件index.js中即可const originalPush = VueRouter.prototype.pushVueRouter.prototype.push = function push(location) { return originalPush.call(this, location).catch(err => err) }

2022-01-06 10:00:00 769

原创 pubsub.js消息的发布订阅

组件间数据的传递方式props,一层一层传递消息的发布订阅,当嵌套层数比较多,可以用此工具库下载$ npm install pubsub-js --save语法PubSub.publish('订阅名', data) //发布消息PubSub.subscrib('订阅名', (msg,data) => {} ) //订阅消息PubSub.unsubscrib('订阅名ID号') //取消订阅使用// 导入import PubSub from "pubsub-js"

2021-12-24 17:57:59 282

原创 python 字符串前面加r,u,b的含义

u/U:表示unicode字符串例:u"我是含有中文字符组成的字符串。"不是仅仅是针对中文, 可以针对任何的字符串,代表是对字符串进行unicode编码。 一般英文字符在使用各种编码下, 基本都可以正常解析,所以一般不带u;但是中文, 必须表明所需编码, 否则一旦编码转换就会出现乱码。 建议所有编码方式采用utf-8,即在py文件开头添加: #coding: utf-8r/R:非转义的原始字符串例:r"\n\n\n\n”  # 表示一个普通生字符串 \n\n\n\n,而不表示换行了。

2021-12-15 18:52:35 207

原创 Python3字符串和符号替换replace(),translate(),re.sub(), strip(), rstrip(),lstrip()

replace()python 中的 replace() 方法把字符串中的 old(旧字符串) 替换成new(新字符串),如果指定第三个参数max,则替换不超过 max 次str.replace(old, new[, max])a = 'Hello,world. ByeBye!'print(a.replace('l','Q'))print(a.replace('abcdefghi','0123456789'))print(a.replace('world','apple'))HeQQo,

2021-12-15 18:35:13 6528 1

原创 Python之excel文件追加内容

环境准备1,安装库安装三个模块:xlrd,xlwt,xlutils命令:pip install xlrd xlwt xlutils代码示例:#!/usr/bin/env python# -*- coding:utf-8 -*-from xlrd import open_workbookfrom xlutils.copy import copyr_xls = open_workbook("test.xls") # 读取excel文件row = r_xls.sheets()[0].n

2021-11-17 10:51:16 549

原创 crontab 里如何创建带日期的文件

需求在crontab 执行定时任务时,将执行的任务输出到带日期的文件中 crontab中,执行脚本需要传入系统时间date+"%Y-%m-%d"正确写法为:$(date +"\%Y-\%m-\%d")而不是这样:date +‘%Y-%m-%d’00 00 * * * python3 /root/xxx/xxxx.py >> /var/ds/$(date +"%Y-%m-%d")-mengdou.txt...

2021-09-02 16:51:26 1209

原创 Nginx显示文件目录并且设置下载

server { listen 80; server_name 域名或者IP; charset utf-8,gbk; # 避免中文乱码 # Load configuration files for the default server block. location /var/logs/ { # 可以指定也可以全部,全部就用 / alias /var/logs/; #指定实际目录绝

2021-09-02 16:19:27 1864 1

原创 Ansible-playbook 传递变量参数

ansible-playbook yml脚本传递变量参数的几种方法playbook 脚本内容---- hosts: "{{ hosts }}" # 变量 remote_user: 普通用户 become: yes become_method: sudo tasks: - name: deliver authorized_keys authorized_key: user: "{{ user }}" # 变量 key: "{{ l

2021-08-02 19:50:19 2782

原创 Ansible普通用户批量推送及更换密钥的简单介绍

playbook- 介绍playbooks是一个不同于使用Ansible命令行执行方式的模式,其功能更强大灵活。简单来说,playbook是一个非常简单的配置管理和多主机部署系统,不同于任何已经存在的模式,可作为一个适合部署复杂应用程序的基础。Playbook可以定制配置,可以按照指定的操作步骤有序执行,支持同步和异步方式。值得注意的是playbook是通过YAML格式来进行描述定义的。核心元素Tasks:任务,由模板定义的操作列表Variables:变量Templates:模板,即使用模板

2021-07-31 19:53:59 491

原创 Ansible 之 Playbook详解

Playbook介绍Playbook与ad-hoc相比,是一种完全不同的运用ansible的方式,类似与saltstack的state状态文件。ad-hoc无法持久使用,playbook可以持久使用。playbook是由一个或多个play组成的列表,play的主要功能在于将事先归并为一组的主机装扮成事先通过ansible中的task定义好的角色。从根本上来讲,所谓的task无非是调用ansible的一个module。将多个play组织在一个playbook中,即可以让它们联合起来按事先编排的机制完成某

2021-07-31 19:17:59 1818

原创 nginx中的location匹配规则介绍 与 rewrite重写跳转

一.常见的Nginx正则表达式符号说明^匹配输入字符串的起始位置$匹配输入字符串的结束位置*匹配前面的字符零次或多次。如“ol*”能匹配“o”及“ol”、“oll”+匹配前面的字符一次或多次。如“ol+”能匹配“ol”及“oll”、“olll”,但不能匹配“o”?匹配前面的字符零次或一次,例如“do(es)?”能匹配“do”或者“does”,”?”等效于”{0,1}”.匹配除“\n”之外的任何单个字符,若要匹配包括“\n”在内的任意字符,请使用

2021-07-29 19:33:42 674

原创 Ansible之ansible.cfg配置文件详解

分为如下几类配置。(1)[defaults][defaults] # inventory = /etc/ansible/hosts # 定义Inventory # library = /usr/share/my_modules/ # 自定义lib库存放目录 # remote_tmp = $HOME/.ansible/tmp # 临时文件远程主机存放目录 # local_tmp = $HOME/.ansible/tmp # 临时文件本地存放

2021-06-02 15:42:30 452

原创 python 倒计时

#!/usr/bin/env python#python3 倒计时#range 参数#start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);#stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5#step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)#负数就是倒数import timefor times in range(12,

2021-03-16 15:32:48 1857 1

原创 python爬虫 关于requests.exceptions.ConnectionError 等问题

在爬虫中报如下的错误:requests.exceptions.ConnectionError: (‘Connection aborted.’, RemoteDisconnected(‘Remote end closed connection without response’,))发现该错误是因为如下:1、http的连接数超过最大限制,默认的情况下连接是Keep-alive的,所以这就导致了服务器保持了太多连接而不能再新建连接。2、ip被封3、程序请求速度过快。解决办法如下:第一种方法:tr

2020-12-11 10:37:49 58360 5

原创 selenium.元素定位(find_element_by)

网页自动化最基本的要求就是要定位到各个元素,然后才能对该元素进行各种操作(输入,点击,清除,提交等)。Ps:学习元素定位方法前,建议先前往http://www.w3school.com.cn/html/index.asp 学习html前端基础知识,这个更加有利于定位。七种定位元素的方式1,通过id定位元素:find_element_by_id(“id_vaule”)2,通过name定位元素:find_element_by_name(“name_vaule”)3,通过tag_name定位元素:fin

2020-09-10 16:58:41 6753

原创 nginx 正向代理配置

http 代理server { listen 88; #监听端口 resolver 8.8.8.8; #dns解析地址 server_name _; #charset koi8-r; #access_log logs/host.access.log main; location / { proxy_pass https://$host$reque

2020-08-13 10:51:39 496

原创 Python 之re模块中,以什么开头以什么结尾取中间内容

import re假如有这样一段话list = "document.write(tit1_('<a href="./202005/t20200513_7387962.htm">5月份第1周畜产品和饲料集贸市场价格情况</a>')); "data = re.findall('htm">(.*)</a>',list)print(data)['5月份第1周畜产品和饲料集贸市场价格情况']...

2020-08-06 09:40:51 3202

原创 python3获取时间戳、秒数和日期时间的相互转换

1、获取时间戳代码如下:import timeimport datetimet = time.time()print (t) #原始时间数据print (int(t)) #秒级时间戳print (int(round(t * 1000))) #毫秒级时间戳nowTime = lambda:int(round(t * 1000))print (nowTime()); #毫秒级时间

2020-08-05 14:25:02 1230

原创 利用python脚本一键启动socks5代理

默认监听0.0.0.0:1080端口python2.7 socks5.py start监听0.0.0.0:8080端口并设置socks5代理的认证密码python2.7 socks5.py start --port=8080 --auth=admin:123456脚本地址

2020-07-16 11:20:44 1622 4

原创 LINUX彻底清除历史记录命令 及日志登录信息

1,临时清除history -c2,永久清除输入history -c 清除掉了,但是系统重启,敲history发现又出现了,怎么办呢用vim编辑器,编辑下profile文件,修改历史命令记录条数就搞定了编辑命令为vim /etc/profile查找/HISTSIZE修改HISTSIZE=0 或者想记录的条数就可以了注:没有的,在文件末尾添加就行。source 一下文件生效source /etc/profileps:还有一个地方会记录当前操作下用户下的历史命令就是这个 文件~/.b

2020-07-13 17:17:26 2306

原创 Ansible hosts文件写法

1、正常写法,name1为别名:[test1]name1 ansible_ssh_host=192.168.8.111 ansible_ssh_user="root" ansible_ssh_pass="123456" ansible_ssh_port=22name2 ansible_ssh_host=192.168.8.222 ansible_ssh_user="root" ansible_ssh_pass="123456" ansible_ssh_port=222、连续的IP写法,表示192.

2020-07-09 17:10:41 6003

原创 MySQL基于日志还原数据

简介Binlog日志,即二进制日志文件,用于记录用户对数据库操作的SQL语句信息,当发生数据误删除的时候我们可以通过binlog日志来还原已经删除的数据,还原数据的方法分为传统二进制文件还原数据和基于GTID的二进制文件还原数据传统二进制日志还原数据1.修改配置文件[root@localhost ~]# vi /etc/my.cnfserver-id=1log-bin=binlog#重启数据库服务[root@localhost ~]# systemctl restart mysqld2.操

2020-07-08 18:43:10 191

原创 linux 修改主机名

1.查看当前的主机名[root@center-2 ~]# hostnamecenter-2[root@center-2 ~]# hostnamectl Static hostname: localhost.localdomainTransient hostname: center-2 Icon name: computer-vm Chassis: vm Machine ID: c6cdeba96dae5d459d9ed7e60ec1123

2020-07-03 12:14:37 306

原创 Python中常见字符串去除空格的方法总结

1:strip()方法,去除字符串开头或者结尾的空格>>> a = " a b c ">>> a.strip()'a b c'2:lstrip()方法,去除字符串开头的空格>>> a = " a b c ">>> a.lstrip()'a b c '3:rstrip()方法,去除字符串结尾的空格>>> a = " a b c ">>> a.rstrip()' a b c'

2020-06-15 19:53:15 578

原创 Linux shell获得脚本目录的上层目录

脚本目录的上层目录cd $(dirname "$0")DIR=$(dirname $(pwd))或者DIR=$(dirname "`pwd`")

2020-06-12 19:09:29 2798

原创 chrome 无法从该网站添加应用、扩展程序和用户脚本(绝对有效)

1.情景展示在安装chrome离线扩展程序时,报错信息如下:2.解决方案第一步:新建一个标签页,在地址栏输入:chrome://flags/#extensions-on-chrome-urls并按回车键                  将值改为enable                   重启chrome             第二步:启用开发者模式再次添加扩展程序就可以了。3.效果展示4.写在最后安装好之后,关闭开发者模式                  

2020-06-10 15:21:27 1887 4

原创 git 常用提交命令

git常使用的命令:一、新建代码库在当前目录新建一个Git代码库git init新建一个目录,将其初始化为Git代码库git init [project-name]下载一个项目和它的整个代码历史 git clone [url]二、配置显示当前的Git配置 git config --list编辑Git配置文件git config -e [--global]设置提交代码时的用户信息git config [--global] user.name "[name]"git co

2020-06-04 17:12:03 198

原创 使用iftop监控网卡实时流量

Iftop工具主要用来显示本机网络流量情况及各相互通信的流量集合,如单独同哪台机器间的流量大小,非常适合于代理服务器和iptables服务器使用,这样可以方便的查看各客户端流量情况。iftop可以在类Unix系统中可以使用top查看系统资源、进程、内存占用等信息。查看网络状态可以使用netstat、nmap等工具。若要查看实时的网络流量,监控TCP/IP连接等,则可以使用iftop.安装iftop:yum install -y iftop使用iftop监控网卡实时流量.1.监控某网卡iftop

2020-06-04 16:46:16 261

原创 shell 交互式自动发送命令

[root@svr5 ~]# vim expect_ssh.sh#!/bin/bashfor i in 10 11doexpect << EOFspawn ssh 172.25.0.$i #//创建交互式进程expect "password:" { send "123456\n" } #//自动发送密码expect "# { send "pwd > /tmp/$user.txt \n"

2020-06-04 16:26:54 702

原创 shell if判断和文件比较运算符

一、if的基本语法if [ command ];then 符合该条件执行的语句 elif [ command ];then 符合该条件执行的语句 else 符合该条件执行的语句fi二、数字条件,字符串条件,字符串为空if [ 1 -ne 1 ];then...fi这是指当1不等于1时执行then后的语句(1).整数比较 -eq 等于,如:if [ "$a" -eq "$b" ] -ne 不等于,如:if [ "$a" -ne "$b" ] -

2020-06-04 16:18:05 396

原创 解决 command ’gcc‘ failed with exit status 1 错误问题

在写Python代码的时候,需要用到psutil模块,需要安装。在安装psutil模块的时候出现的问题,重新安装了gcc等各种我能想到的,不过还是不行。网上说是其实安装一个对应的devel环境就可以了。报错如下: #include <Python.h> ^ compilation terminated. error: command 'gcc' failed with exit status 1其实只要看include缺什么就行了,我缺的时P

2020-05-28 17:21:24 4331

原创 使用pyenv管理不同的Python版本

1.pyenvhttps://github.com/pyenv/pyenv2.pyenv安装https://github.com/pyenv/pyenv-installer根据https://github.com/pyenv/pyenv-installer/blob/master/README.rst 提示安装1)下载克隆 yum -y install git curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin

2020-05-25 20:31:14 249

原创 一个自动安装 python版本 脚本

可以自由选择版本安装,替换自己想要安装的版本,网址是国外的,安装失败,基本都是网络请求延时的原因,多试几遍# coding=utf-8import osimport sysif os.getuid() == 0: passelse: print('当前用户不root用户, 请以root用户执行脚本') sys.exit(1)version = raw_input('请输入你想安装的python版本(2.7/3.5):')if version == '2.7':

2020-05-25 15:15:34 347

原创 zabbix 邮件发送脚本

脚本存放在 zabbix 安装目录下 share/zabbix/alertscripts/进入alertscripts目录下# vimmail_163.py#!/usr/bin/python#coding:utf-8#zabbix监控报警发送邮件脚本import smtplibfrom email.mime.text import MIMETextimport sysmail_user = '邮箱'mail_pass = '授权密码' def send_mail(..

2020-05-25 15:01:44 315

原创 shell 数组和字典

#!/bin/bash#!/bin/bash#必须先声明declare -A dicdic=([key1]="value1" [key2]="value2" [key3]="value3")#打印指定key的valueecho ${dic["key1"]}#打印所有key值echo ${!dic[*]}#打印所有valueecho ${dic[*]}#遍历key值for key in $(echo ${!dic[*]})do echo "$key : ${

2020-05-12 12:18:22 316

原创 Robots协议

好的网络爬虫,首先需要遵守Robots协议。Robots协议(也称为爬虫协议、机器人协议等)的全称是“网络爬虫排除标准”(Robots Exclusion Protocol),网站通过Robots协议告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取。在网站根目录下放一个robots.txt文本文件(如 https://www.taobao.com/robots.txt ),里面可以指定不同的网络爬...

2020-04-24 11:15:00 224

原创 python2和3版本 print输出到文件

**python2和3版本 print输出到文件**要将程序的输出送到一个文件中,需要在 print 语句后面使用 >> 指定一个文件,如下所示:principal = 1000     # 初始金额rate = 0.05     # 利率numyears = 5  ...

2020-04-24 11:01:55 2111

原创 squid反向代理

1、缓存服务器的原理 2、squid正向代理 3、squid透明代理 4、squid反向代理1、缓存服务器的原理(ftp/http)2、squid正向代理3、squid透明代理squidiptables redirectroute/SNAT1、在代理服务器上开启路由[root@VM_16_17_centos ~]# echo 1 > /proc/sys/net...

2019-06-04 20:00:27 942

原创 squid.conf 详解

squid常用命令:/usr/local/squid/sbin/squid -z 初始化缓存空间/usr/local/squid/sbin/squid 启动/usr/local/squid/sbin/squid -k shutdown 停止/usr/local/squid/sbin/squid -k reconfigure 重新载入配置文件/usr/local/squid/sbin/sq...

2019-06-04 19:51:35 2284

空空如也

空空如也

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

TA关注的人

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