
python实践中的小实例
乱弹世界
向上的路并不难走,因为更多的人选择安逸
展开
-
python提供web服务获取数据
我们游戏项目中基本都需要获取在线人数(ccu),可以通过python自带的web服务快速实现原创 2022-07-06 19:17:41 · 604 阅读 · 1 评论 -
python快速启动一个web服务
紧急情况下,需要远程访问或者下载某些文件和目录的时候,可以使用python自动的轻量级web来快速实现功能。1.在服务端相关目录下启动一个http server,绑定端口2.在客户端可以访问对应根目录以及根目录下的文件和子目录,下载和访问都没问题3.不想使用的时候,直接杀掉对应的进程终止提供服务,随用随启,非常方便,推荐给大家。...原创 2021-09-24 17:37:45 · 2300 阅读 · 0 评论 -
python快速实现一个接口服务
在我们的业务中,需要启动一个daemon进程,提供相关的数据给远程来访问获取。这个例子中是用python来启动一个web服务,获取某个文件下的数据,然后提供远程实时调用,代码如下:#!/usr/bin/env python import json,os,time##这几个模块都是python自带的,不需要重新安装from urlparse import parse_qsfrom wsgiref.simple_server import make_server # 定义函数,参数是函数的两个原创 2021-09-24 17:20:51 · 2178 阅读 · 0 评论 -
Python检测UDP端口是否正常通信
通过python脚本构建客户端,向服务器发送hello的UDP包,然后在跑客户端的机器上tcpdump抓包查看是否能正常收到UDP回包,即可判断UDP服务是否正常。# -*- coding:utf-8 -*-#!/usr/bin/pythonimport sysimport osimport socketimport threadingfrom threading import _Timerimport datetimeimport timeimport selecttotal.原创 2021-08-25 15:26:41 · 2743 阅读 · 0 评论 -
企业微信API&群机器人配置
我们公司用的企业微信,会把相关开发或者运维拉到一个群里,然后配置上一个群机器人,这样的话就可以用企业微信API来配置群机器人接收消息,把一些日常的服务器或者日志告警发送到对应的群。以下介绍两种常用的消息发送类型:文本类型和文件类型发送文本类型的消息文本消息示例{ "msgtype": "text", "text": { "content": "广州今日天气:29度,大部分多云,降雨概率:60%", "mentioned_list":["wangqi原创 2021-03-12 10:39:54 · 5869 阅读 · 3 评论 -
CMDB批量操作给Linux服务器改hostname
现在的服务器维护,大部分是用CMDB操作了,在使用CMDB批量改名的过程中,需要找到对应服务器的ip和相对应的hostname,然后进行hostname设置,以下是我经常使用的一个小脚本:#!/usr/bin/env python#-*- codinig: UTF-8 -*-import osimport subprocessimport socketips = '''10.0....原创 2020-04-20 15:26:52 · 275 阅读 · 0 评论 -
CentOS6.x 安装 Docker 和 Docker Compose
本来,对于 CentOS 系列,Docker 官方要求要 CentOS7.0 及以上系统版本,但是有时候迫不得已,还是要在已有的 CentOS6.x 的系统上安装。比如我遇到的:要在一台已有的 CentOS6.5 的服务器上部署一个 Java 应用,该 Java 应用基于 Java8 和 Mysql5.6 开发,都用到了相应的特性。但是,已有的 CentOS6.5 上已经在跑着几个 PHP 和 ...转载 2018-11-19 18:47:46 · 492 阅读 · 0 评论 -
python多线程批量过滤文件关键字
基于上一篇博客中的问题,我尝试用python改成多进程运行:https://blog.youkuaiyun.com/linxi7/article/details/81317704#!/usr/bin/env pythonimport time, datetimeimport os, sys, commandsimport socketimport threadingOSS_DIR="/da...原创 2018-08-10 14:28:03 · 1060 阅读 · 0 评论 -
centos6.2 安装virtualenv 来隔离python2 和python3 以及部署Django
下载Python-3.6.0 https://download.youkuaiyun.com/download/linxi7/10328013安装软件yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel xz gcc zlib zlib-devel安装解压Pytho...原创 2018-04-04 19:23:10 · 349 阅读 · 0 评论 -
python+shell 批量获取服务器信息并且生成excel表
我们工作中,经常需要获取服务器的一些信息,包括软件的和硬件的。例如刚刚接收的服务器,需要批量获取信息确认硬件配置是否符合我们需求,或者维护很长时间的服务器,中间变动了很多,但是服务器信息没有更改,这个时候也需要进行信息核对等等。基于以上这些需求,我写了一个脚本,用shell批量获取远程服务器的信息保存到一个结果,然后用python进行解析,生成excel表。以下是具体步骤:配置ssh免密码登录,或原创 2017-12-25 15:25:41 · 4885 阅读 · 0 评论 -
shell编程中的字典和数组
本文为转载文章! 原文链接:http://blog.youkuaiyun.com/jeremy_yangt/article/details/49100773#!/bin/bashecho "shell定义字典"#必须先声明declare -A dicdic=([key1]="value1" [key2]="value2" [key3]="value3")#打印指定key的valueecho ${dic转载 2017-11-29 17:31:19 · 2299 阅读 · 0 评论 -
python+influxdb+shell写一个区域网络状况表
shell脚本部分:ex:就是ping 各个目的ip10个包,然后获取丢包率和平均延迟时间,在Linux上设置为定时任务,每分钟执行一次。他会把数据写到influxdb服务器上面去,表示hk_vnloss和hk_vn01rtt,字段是loss和rtt,其他各区域的都是类似。python代码部分: 1、在Django项目的setting里面,配置influxdb数据库连接;ALLOWED_HOSTS原创 2017-10-18 18:58:15 · 1971 阅读 · 0 评论 -
python修改文件内容
一行行的读取原文件,找到需要修改文件的地方,然后换成修改后的内容,写入新文件,如果原文件不需要了,就可以用新生成的文件覆盖原文件,代码如下:#原文件: old_file#新文件: new_filef = open('old_file', 'r')f_new = open('new_file', 'w')for line in f: if "context_changed" in li原创 2017-04-25 15:04:20 · 1251 阅读 · 0 评论 -
python仿Linux下的实时进度条
实时输出进度条:import sys, timefor i in range(50): sys.stdout.write("#") sys.stdout.flush() time.sleep(0.2)每隔0.2秒打印一个#,总共打印50个,结果如下:原创 2017-04-25 13:46:24 · 1165 阅读 · 0 评论 -
python小实例--定期检查源目录与备份目录的差异进行备份
在项目中,经常要更新文件,在更新之前首先要备份源文件,所以就用到了这个脚本(来自于Python自动化运维这本书),总共有以下几个步骤:获取要进行比较的两个目录,进行差异比较,把源目录特有的文件或目录、以及和备份目录不同的文件或目录保存到列表中,并且判断目录下面是否还有目录,递归进行保存这些差异文件。将差异文件列表中文件或目录的路径换成对应的备份路径,进行判断,如果备份路径不存在,就创建目录。继原创 2017-03-07 11:37:58 · 1184 阅读 · 2 评论 -
python小实例--监控Nginx配置文件的不同并且邮件报警
因为项目中经常涉及到多个Nginx之间的配置文件更改,可能回导致最后Nginx之间的配置文件有所不同,这样会对项目产生影响,最典型的就是可能当访问域名解析到其中一台Nginx的时候,可能是正常的,当域名解析到另外一台Nginx的时候,由于配置文件的不同,导致访问出错之类的,影响体验,所以用python写了一个监控配置文件不同的脚本,如果发现不同,就报警,并且以HTML的形式发送邮件指出具体的文件不同原创 2017-03-02 11:22:34 · 1187 阅读 · 0 评论