python
文章平均质量分 50
merlin’s girl
努力学习
展开
-
使用xsd验证xml格式的正确性
3.该方式验证xml格式正确性,轻代码重xsd配置,但也有好处,当xml格式发生改变时,无需修改代码,只需要对应修改xsd即可,且相对代码来说,易上手。原创 2024-05-23 21:15:00 · 1939 阅读 · 0 评论 -
【python】GIL全局锁
全局解释器锁(Global Interpreter Lock,GIL)规定全局范围内任意时候一个进程里只能同时执行一个线程。每一个线程在执行时,都会锁住GIL,以阻止别的线程执行;执行一段时间后,会释放GIL,以允许别的线程开始利用资源,如果遇到阻塞情况,也会提前释放锁。原创 2023-03-30 15:44:51 · 3115 阅读 · 0 评论 -
python 3 - Clipspy模块使用
Clipspy底层是基于clips规则引擎开发、支持python3的一个模块,在python3的工程中,可以通过调用clipsy的API接口实现clips规则引擎。原创 2022-11-22 14:23:10 · 648 阅读 · 0 评论 -
【个人经验总结】内网环境如何高效安装python模块包及相关依赖包
在外网使用pip download指定版本号下载模块包,且将相关依赖包都一并下载保存到文件夹中,且使用python脚本生成对应的requirement.txt文件,然后再一起打包传输到内网。最后使用pip install 批量安装。这样子就可以节省掉很多的时间,也提高了环境准备的效率,可以将更多的时间投入到开发上。.........原创 2022-08-08 10:52:11 · 3959 阅读 · 1 评论 -
读取json配置文件,实现数据驱动测试
虽然在RegisterTest测试用例中只书写了一个test方法,但执行的用例个数却有3个,这是因为json数据文件中含有3组数据,这就是ddt数据驱动测试的魅力所在,大大提高了代码的复用率,而且如果需要增加同样请求过程的测试用例,只需要在json文件中增加一组测试数据即可,无需修改代码。......原创 2022-07-25 19:55:33 · 578 阅读 · 0 评论 -
python + selenium 个人信息修改脚本编写
该脚本以学掌门网站为例,进行登录并进入到个人中心,对个人信息进行修改。主要涉及元素的定位(css_selector、xpath、class_name、tag_name)、对元素的属性值进行修改(删除readonly、修改class值、修改style值)、日历控件的处理、默认值的清除等。...原创 2022-06-23 20:22:57 · 1282 阅读 · 0 评论 -
python Locust个人学习记录
一、什么是locust?Locust(蝗虫)是一个性能测试框架,可以并发生成多用户同时向我们的被测系统发出请求,且自带一个Web UI,用于定义用户模型,实时观察测试数据,错误统计等。(1)安装locust联网情况下:pip install locust无网情况下:下载安装包安装(安装包下载地址) 安装好后,在cmd窗口下执行locust --help 查看是否安装成功。.........原创 2022-06-12 21:43:14 · 683 阅读 · 0 评论 -
【python 模块】configparser 配置文件读写模块实践
安装configParserpip install configparser读取的配置文件格式要求#config.ini[config] #中括号表示第一级,sectionname = ConfigParser #用等号将键值对关联起来,key 在configparser中叫 optionfunction = readConfigFileAndGetValueversion = V1.0案例1:读取一个文件# coding = uft-8import configparser原创 2022-03-21 16:30:38 · 620 阅读 · 0 评论 -
搭建自己的pypi镜像库
搭建自己的pypi库介绍原创 2022-02-08 15:36:38 · 3388 阅读 · 8 评论 -
剑指 Offer II 119. 最长连续序列
期间提交有个错误案例是:输入:[1,2,0,1]输出:2预期输出:3所以在第二个while里加了:or (nums[right] == nums[right + 1])class Solution(object): def longestConsecutive(self, nums): """ :type nums: List[int] :rtype: int """ max_len = 0 ..原创 2021-11-25 21:28:07 · 264 阅读 · 0 评论 -
lecode解题-最长回文子串
class Solution(object): def longestPalindrome(self, s): """ :type s: str :rtype: str """ if len(set(s)) == 1: return s palind = [] for i in range(len(s)): left_index = i..原创 2021-11-17 15:17:05 · 312 阅读 · 0 评论 -
python - 根据接口文档创建DBF
前一个文章里(DBF文件格式及读写实践https://blog.csdn.net/qq_37016994/article/details/116780062?spm=1001.2014.3001.5501)仅是对现有的dbf文件进行读写操作,现补充创建dbf文件的代码,如下:其中config.txt里定义了dbf文件的接口,接口文件:http://www.chinaclear.cn/zdjs/editor_file/20200814174418115.pdf#字段名,字段描述,类型,长度SXJGBS,原创 2021-09-01 10:51:01 · 796 阅读 · 0 评论 -
python-读取excel中的网页链接,将网页标题读取并保存至新的excel文件
#coding:utf-8import requestsimport refile_path = "C:\\Desktop\\网站链接.xls"result = ''with open(file_path,'r') as f: line = f.readline() while line != '': data = str(line).replace('\r','').replace('\n','') if data.strip()[0:4] !=原创 2021-06-09 11:40:25 · 759 阅读 · 0 评论 -
DBF文件格式及读写实践
DBF文件格式:文件头格式:记录项信息描述数组结构(每个记录项都是32个字节):例如下方的ZJSXK.DBF就有24个记录项。每次写入新数据到DBF中时,要注意同时更新文件头的时间和记录条数。其余不需要改变,因为文件的格式没有发生改变。在python编码中,使用struct模块实现二进制字符串和string字符串的转换。主要使用其中的unpack方法和pack方法。首先看看DBF各个字符的格式如果对应起python中的格式:举个例子:文件头中的文件记录条数是1原创 2021-05-14 13:49:31 · 3928 阅读 · 15 评论 -
python 读写文件
#pyhton文件操作#coding:utf-8def read_file(file_path): with open(file_path,'rb') as f: #以行形式的读取文件的全部内容,返回列表 s = f.readlines() print(type(s),s) for i in s: print(i.decode('utf-8')) with open(file_path,'rb'.原创 2021-03-22 13:35:59 · 1005 阅读 · 0 评论 -
python 匿名函数lambda
#coding:utf-8#匿名函数 lambda#冒号前面是参数,冒号后面是表达式。无需写return语句,表达式结果就是返回值。#无参数匿名函数x = lambda : Falsefor i in range(10): print(x())#有参数匿名函数x2 = lambda s:s.join('TYPE')print(x2('wei'))#多个参数的匿名函数x3 = lambda x, y : x+y*2print(x3(3,4))#作为函数参数的匿名函数.原创 2021-03-22 10:54:26 · 131 阅读 · 0 评论 -
python 函数传参*args(元组)、 **kargs(字典)
#coding:utf-8# *args 不定长元组,传参# **kargs 不定长字典,传参def function_args(*args): print(type(args),args) passdef function_args_2(str_1,*args): print(type(str_1),str_1) print(type(args),args) passdef function_kargs(**kargs): print(ty.原创 2021-03-22 09:55:13 · 823 阅读 · 0 评论 -
python:%和format格式化输出及占位符
#coding:utf-8#格式化 %符号和format函数的使用def mingpian(*args): format_mp = ''' 姓名:%s 部门:%s 职位:%s 地址:%s 电话:%s 邮箱:%s''' print(format_mp % (args[0],args[1],args[2],args[3],args[4],args[5])) passdef mingpian_2(*args): forma.原创 2021-03-19 15:10:41 · 709 阅读 · 0 评论 -
python内置函数 --- map()
#python内置函数 其中之一 map()#map函数是根据指定函数对指定序列做映射,在开发中使用map函数也是有效提高程序运行效率的办法之一.def square(x): return x ** 2print(list(map(square,[1,2,3,4,5])))print(list(map(lambda x:x ** 2,[1,2,3,4,5])))print(list(map(lambda x,y: x+y, [1,3,5,7,9],[2,4,6,8,10]))).原创 2021-03-19 14:19:14 · 363 阅读 · 0 评论 -
python学习-列表推导式
列表推导式定义:列表解析式是Python内置的非常简单却强大的可以用来创建list的生成式。好处:代码简洁,同时底层是C语言实现,运行速度更快。格式:结果列表= [需要返回的结果 for循环迭代 if条件语句] 条件语句不是必须的。eg:list= [i for i in range(10)] 执行后:list=[0,1,2,3,4,5,6,7,8,9]仅仅一行代码可以完成,如果是按照平时的写法将要3行代码。list=[]for i in range(10): lis..原创 2021-03-18 11:38:46 · 452 阅读 · 1 评论 -
python学习-修饰器(decorator)
修饰器修饰器(decorator)的作用:给被修饰的函数进行预处理。在函数前、后做特定操作。简单来说,装饰器就是实现了一个通用的功能,避在不同函数上反复写相同的代码。def printStar(f): def g(): print('1*'*20) f() print('2*'*20) return g@printStardef boy(): print("I am a boy.")@printStardef gi原创 2021-03-18 10:29:34 · 2460 阅读 · 1 评论 -
GlidedSky爬虫学习探索之旅(三)
题目四:爬虫-CSS反爬分析题目:(一)界面显示的117,在源码中是171。查看171元素对应的css源码。可以看到,第一个1中left没有赋值。第二个7中left的值为1em,第三个1中left的值为-1em。对【 1 7 1】进行移位,7的index+1em,第三个1的index-1em,结果为【1 1 7】,即为界面显示的数字。(二)界面上显示141,源码中为6114。查看6114元素对应的css源码。【 6 1 1 4 】,对6的index+1em-1em,对第一个1的原创 2020-12-15 14:09:34 · 281 阅读 · 0 评论 -
GlidedSky爬虫学习探索之旅(二)
题目三:爬虫-字体反爬-1分析题目:字体文件本质上是从字符到图像的一个映射,我们只需要找到该映射关系即可。其中映射关系从页签源码中可以找到,但是是base64编码的东西,需要借助工具FontCreator查看。编码方式:工具查看:对应关系:0:1,5:1,8:2,7:3,4:4,9:5,6:6,3:7,2:8,1:9界面展示:抓取到的text及根据对应关系转换出来的值:value: 812 temp: 298value: 403 temp: 407value: 5原创 2020-12-08 11:37:59 · 196 阅读 · 1 评论 -
GlidedSky爬虫学习探索之旅(一)
学习网址:http://www.glidedsky.com/,使用pyppeteer模块进行爬虫。题一:爬虫-基础1分析题目:该题目为基础题,所有的数字都在一个页签里,且页签源码里的内容就是展示的内容,所以仅仅需要抓取数字对应的标签并获取到text值再累加起来就可以。观察数字对应的标签xpath的规律:217对应的xpath://*[@id="app"]/main/div[1]/div/div/div/div[1] 335对应的xpath://*[@id="app"]/main/div[1原创 2020-12-08 11:01:24 · 271 阅读 · 0 评论 -
学习pyppeteer-练习(一)
这里写自定义目录标题学习pyppeteer-练习(一)代码实现如下:输出结果:学习pyppeteer-练习(一)实现打开百度页面,获取“百度一下”点击按钮,和输入框对象,在输入框中输入“测试工程师”,点击搜索。抓取搜索结果中的链接。代码实现如下:#coding:utf-8import os ,time , asyncio ,tkinterfrom pyppeteer import launchdef screen_size():#设置页面大小 tk = tkinter.Tk()原创 2020-10-28 11:12:39 · 345 阅读 · 0 评论 -
python nose自动化框架(一)
python nose自动化框架(一)最近在项目里学习自动化,编写了一些自动化用例,其中使用到的框架是python 的 nose,简单易上手。以此文档来记录自己的学习。安装下载nose python安装包:搜索pypi官网,在官网里下载即可。nose python安装包下载路径安装方式:解压压缩包,到解压目录,打开cmd执行 python setup.py install查看安装成功与否...原创 2020-04-16 20:28:02 · 377 阅读 · 0 评论