zl程序教程

您现在的位置是:首页 >  后端

当前栏目

python修改第三方库重写_对Python第三方库,再次封装

Python封装重写 修改 第三方 再次
2023-06-13 09:14:33 时间

一、为何再次封装?

Python一大优势是有丰富的第三方包。可以站在牛人的肩膀上,让编程更简单,功能实现更快,也更完善。但有包还不够,因为包是通用的,普遍的。包含基本功能,或为了普遍性,而给了很多选项。用起来不顺手,或不够简洁。为了更进一步提高效率,就要再次封装。就是依据具体需求,将包重新写,做个性化处理。让工具更顺手,更方便。

二、举例

比如在U2中,有多种方法查找元素。通过text,describtion, id。在实际使用时,如果不封装,就需要写很多重复的代码。比如最多的用文本(text)定位和点击。就得写,d(text=’开始’).click(),经过封装就可以这样写,u.click_(‘开始’)。如果再复杂的,用匹配定位,不封装就更复杂了。而封装后就可以写,u.click_(‘看视频’,contains=True)。具体贴一下我封装的查找方法。

说明:

1、使用了装饰器。

因为自动化工具,在查找不到元素时,往往采用报错的方式来提醒。在实际应用时,每次都写try,来捕捉异常,就有很多重复代码。而装饰器可以很方便,套一个捕捉异常,来减少代码。

2、使用by_which来判定是用什么来定位,timeout确定等待时间,contains确定是否用包含文字来定位。有默认值,可以有效减少代码。

3、优化text。

在手机里有两种文本,一种是text,一种是describtion。刚开始我是分开处理的,后面才想到直接用代码来处理,而不用管是哪种文本。

4、其他针对元素的操作都是基于find这个方法,可以有效减少代码。比如click_。

好了。因为基本完成了代码,只是盯着看哪里有错,做优化,比较闲。所以有空做这个。我会在评论区贴分享的地址。需要请自取。

再次强调:1、代码还不完善,会有错误。2、适合懂python的朋友。3、脚本使用有限制,可去网上寻找其他auto.js的脚本。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/182200.html原文链接:https://javaforall.cn