Python学习篇
Python学习过程
xianjie0318
坚持下去
展开
-
psutil执行exe文件并检查启动进程
#!/usr/bin/python# --*-- coding:utf-8 --*--"""@File:fileprocess.py@Author: xianqc@Date:2020/11/17 2020/11/17 """import psutilimport subprocessimport errnoimport osimport timedef startprocess(cmdline): try: ps = subprocess.Popen(c.原创 2020-11-17 16:59:07 · 954 阅读 · 1 评论 -
python-测试框架nose(nosetests)简介
官网文档nose使用文档-英文版简介nose是一个可以从python源文件/目录或工作目录找到符合自身规则的自动收集测试。任何与testMatch正则表达式匹配的python源文件/目录或包收集。此外,发现的包或模块会沿着树结构一层层匹配,并收集所有的文件,然后检查所有匹配的测试用例执行,并可以兼容插件使用。收集规则:testMatch,使用正则匹配,符合self.testMatch = re.compile(r'(?:^|[\\b_\\.%s-])[Tt]est' % os....原创 2020-06-20 18:44:17 · 15413 阅读 · 0 评论 -
python3的urlretrieve使用方法:获取远程的文件或者配置信息下载到本地
urllib.request模块提供的urlretrieve()函数。urlretrieve()方法直接将远程数据下载到本地。urlretrieve(url, filename=None, reporthook=None, data=None)参数filename指定了保存本地路径(如果参数未指定,urllib会生成一个临时文件保存数据。) 参数reporthook是一个回调函数,当连接上服务器、以及相应的数据块传输完毕时会触发该回调,我们可以利用这个回调函数来显示当前的下载进度。 参数..原创 2020-06-16 21:45:48 · 1135 阅读 · 0 评论 -
获取脚本所在服务器或PC的本地IP(用于同一个产品或部分产品部署多个终端的测试获取ip)
通过DNS获取内网内的本地IP#!/usr/bin/env python# encoding: utf-8import socketdef get_host_ip(): try: s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) s.connect(('192.168.31.1', 53)) ip = s.getsockname()[0] print(s.getsoc.原创 2020-06-16 21:19:48 · 294 阅读 · 0 评论 -
unittest中的setUp/setUpClass的区别
1、setUp案例import unittestclass TestSetup(unittest.TestCase): def setUp(self): print("setUP") def testOne(self): print("testone111") def testTwo(self): print("testtwo222") def testThree(self): print("test33原创 2020-06-14 14:08:13 · 3607 阅读 · 0 评论 -
python+unittest+requests+HtmlTestRunner生成html测试报告-案例三
首先需要安装模块:pip install html-testRunner,安装后调用时显示为HtmlTestRunner;import unittestimport requestsimport jsonclass testzylogin(unittest.TestCase): @classmethod def setUpClass(self): self.loginurl = "https://***/api/account/login?code="原创 2020-06-14 11:50:15 · 419 阅读 · 0 评论 -
python+requests+unittest案例二,增加断言
import unittestimport requestsimport jsonclass testzylogin(unittest.TestCase): @classmethod def setUpClass(self): self.loginurl = "https://*****/api/account/login?code=" self.data = {"loginName": "****", "password": "*****"} .原创 2020-06-14 08:24:16 · 827 阅读 · 0 评论 -
linux下执行python获取中文数据时,UnicodeDecodeError: 'utf-8' codec can't decode byte 0xa8 in position
linux环境linux下查看文件编码格式以及转换格式教程我们查看的urllist.txt的字符编码转化为UTF-8编码,并且重新输出到urllist.txticonv urllist.txt -f iso-8859-1 -t UTF-8 -o urllist.txt --verbose最后我们验证转化后的test1.log的字符编码。我们执行命令:file -i urllist.txt查看字符编...原创 2018-03-02 14:03:06 · 1540 阅读 · 0 评论 -
python 创建目录的方法
#/usr/bin/python#encoding:utf-8'''Created on 2018年3月5日@author: Administrator'''def mkdir(path): import os path=path.strip() path=path.rstrip("\\") isExists=os.path.exists(path) if not i...原创 2018-03-06 21:58:08 · 664 阅读 · 0 评论 -
python使用直方图计算法比对图片,不一致的图片发送告警日志信息
#/usr/bin/python#encoding:utf-8from PIL import Imageimport os,timeimport sendresyslogdef calculate(image1, image2): g = image1.histogram() s = image2.histogram() assert len(g) == len(s), "err...原创 2018-03-06 22:01:15 · 938 阅读 · 0 评论 -
python远程发送syslog到某个机器上514端口,并注意addHandler()在循环执行时,调用只能一次
源代码#/usr/bin/python#encoding:utf-8import loggingimport logging.handlers # handlers要单独importimport GetConfiggetcon=GetConfig.GetConfig()IP=getcon[0]Port=int(getcon[1])logger = logging.getLogger('WebTa...原创 2018-03-01 10:33:31 · 4650 阅读 · 1 评论 -
Python3.6+Django2.0.2,实现用户注册,并展示用户名称和密码列表
环境要求:Windows10Python3.6.4Django2.0.2Eclipse+Pydev实现需求:1、用户注册:用户名称 密码、邮箱 手机号 住址等信息;2、用户注册完成后,跳转用户信息展示页面;实现步骤:1、搭建Eclipse+Pydev+Python3.6.4+Django2.0.2的开发环境;2、新创建一个Django的web项目,进入new--Django project项目;新...原创 2018-04-11 17:58:26 · 4652 阅读 · 1 评论 -
Python3.6+Django2.0.2 实现用户登录+跳转首页--左侧菜单+添加用户信息--展示用户信息
一、环境要求:python版本:Python3.6.4web框架:Django2.0.2开发工具:Eclipse+Pydev数据库:mysqlweb:html+css+JavaScript二、实现需求:1、用户登录:用户登录页面,输入用户名、密码(非加密),通过与数据库比对,验证通过后,登录成功,调整首页2、首页:左侧菜单(粗糙)--多级菜单3、用户管理--添加用户--跳转用户添加页面,提交数据库...原创 2018-04-20 14:44:54 · 13437 阅读 · 0 评论 -
python自动化运维学习------使用模块psutil获取系统cpu、内存、磁盘、网络、进程等信息
系统基础信息采集模块作为监控模块的重要组成部分,能够帮助运维人员了解当前系统的健康程度,同事也是衡量业务的服务质量的依据,比如系统资源吃紧,会直接影响业务的服务质量及用户体验,另外获取设备的流量信息,也可以让运维人员更好地评估宽带、设备资源是否应该扩容。Python中存在第三方系统基础模块,可以帮助自动化运维的成员获取服务运营指标数据,包括Linux基本性能、块设备、网卡接口、系统信息、网络地址库原创 2017-06-28 10:58:08 · 11758 阅读 · 0 评论 -
Python远程登录Linux操作系统,执行命令、创建目录、上传及下载文件
远程连接Linux主机,执行命令、创建目录、上传及下载文件#!/usr/bin/python#coding:utf-8import paramikofrom fabric.api import env,put,getimport threadingclass Host:def __init__(self,ip,user,password):self.user=u原创 2017-06-27 11:15:37 · 4603 阅读 · 0 评论 -
python+selenium个人开发的自动化测试框架
1、为什么开发这个框架呢? 首先,今年自从做测试行业以来,没有属于自己的东西,功能测试这块可以说没有什么技术性的积累,都是经验;性能测试方面,用过jmeter、loadrunner,积累的经验比较浅薄;自动化测试接触过java+selenium;在网上或者测试行业现阶段分析了一下,python这门语言学习起来简单一些但是功能强大,最后2016年下半年决定在空余时间学习研究pytho原创 2017-01-24 11:08:01 · 11292 阅读 · 5 评论 -
redmine中使用python按人员分组统计问题入excel的自编写案例
import xlrdfrom xlutils.copy import copyclass ByUserStatistics(object): #按人员分组统计入excel def __ByUserStati__(self,reportfilepath,db): cursor=db.cursor() sql='''原创 2017-02-09 15:09:34 · 1676 阅读 · 0 评论 -
python整数与IP地址转换
python整数与IP地址转换 [转]我们有时会将一个整数与IP地址进行互换,用python代码实现很简单将一个整数如2000000,变为一个IP地址的方式>>> import socket>>> import struct>>> int_ip = 123456789>>> ip = socket.inet_ntoa(struct.pack('I',socket.hto转载 2017-02-13 10:03:41 · 1726 阅读 · 0 评论 -
Python转义字符
在需要在字符中使用特殊字符时,python用反斜杠(\)转义字符。如下表:原始字符串有时我们并不想让转义字符生效,我们只想显示字符串原来的意思,这就要用r和R来定义原始字符串。如:print r'\t\r'实际输出为“\t\r”。 转义字符描述\(在行尾时)续行符\\反斜杠符号\'单引号原创 2017-02-18 11:36:19 · 822 阅读 · 0 评论 -
python 的日志logging模块学习
python 的日志logging模块学习1.简单的将日志打印到屏幕 import logginglogging.debug('This is debug message')logging.info('This is info message')logging.warning('This is warning message')转载 2017-03-23 10:15:19 · 378 阅读 · 0 评论 -
Python time模块学习
import timeprint time.asctime()print time.clock()print time.ctime()print time.gmtime()print time.mktime(time.localtime())print time.localtime()print time.strftime('%Y-%m-%d %X', time.lo原创 2017-03-23 10:48:50 · 505 阅读 · 0 评论 -
python开发技能表格
转载 2017-05-13 21:51:15 · 536 阅读 · 0 评论 -
测试用例顺序执行时,若上一个用例未退出iframe,下一个测试用例默认需要一次退出iframe,否则定位iframe出现错误
python elenium自动化测试用例,当我按测试计划顺序执行测试用例时,有一个用例报错,并未执行到退出iframe框架中,当执行下一个用重新定位iframe时,定位错误,导致后续很多用例无法执行!如一个用例删除客户数据def DeleteCustom(self,testsuite,testcase,inputdata,expectdata): client原创 2017-02-09 14:26:22 · 693 阅读 · 0 评论 -
测试用例中截取异常图片时,单独存储一个目录,并记录到测试执行记录中
封装一个截图存储的方法:如果当前页面有滚动条,这里增加了滚动所有页面展示并截图,如下 def printScreen(self,save_fn): self.driver.execute_script(""" (function () { var y = 0; var step = 100;原创 2017-02-09 14:32:48 · 575 阅读 · 0 评论 -
python的反射机制
python中如何通过模块参数获取到 模块路径__import__作用:同import语句同样的功能,但__import__是一个函数,并且只接收字符串作为参数,所以它的作用就可想而知了。其实import语句就是调用这个函数进行导入工作的,import sys sys = __import__('sys')getattr()函数是Python自省的核心函数获取对象引用getatt原创 2017-02-09 14:58:07 · 1650 阅读 · 0 评论 -
python自动化中如何把测试用例中文本参数数据name=tom,passwd=1111转化为字典存储
字典内置的数及描述1 radiansdict.clear()删除字典内所有元素2 radiansdict.copy()返回一个字典的浅复制3 radiansdict.fromkeys()创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值4 radiansdict.get(key, default=None)返回指定键原创 2017-02-09 15:00:33 · 914 阅读 · 0 评论 -
python2.7 使用MySQLdb模块封装一个获取mysql连接的类案例
案例具体如下:import MySQLdbclass GetMysql(object): def getCon(self): Host="192.168.0.222" Port=3306 User="root" Passwd="111111" Db="redmine"原创 2017-02-09 15:51:44 · 1535 阅读 · 0 评论 -
Python连接impala并获取数据
1、安装Python packagepip install impyla2、python客户端与impala交互2.1 连接impala>>> from impala.dbapi import connect>>> conn = connect(host='my.impala.host', port=21050)>>> cur = conn.cursor()原创 2017-02-13 08:57:14 · 22353 阅读 · 0 评论 -
获取某目录或文件夹下的所有.xls文件的名称
封装一个类:获取某个目录下的所有".xls"的文件的名称列表import osclass GetFileList(object): def GetFileList(self,dir): fileLists=[] if os.path.isdir(dir): for s in os.listdir(dir):原创 2017-02-17 09:16:30 · 1551 阅读 · 0 评论 -
把一个列表中的数据进行编号存储成为元组
把列表['张三','李四','王五']=====(('1',['张三'),('2','李四'),('3','王五'))代码如下#encoding:utf-8list=['张三','李四','王五']choiceslist=[]for i in range(0,len(list)): datakey='testcase00'+str(i+1) datava原创 2017-02-17 10:09:58 · 965 阅读 · 1 评论 -
testlink测试用例导出xml,转为Excel格式(python)
领导想要查看redmine的任务完成情况,本人就编写了一套脚本,请大家指点原创 2017-02-23 20:44:14 · 10756 阅读 · 3 评论