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

python修改第三方库重写_对Python第三方库,再次封装一、为何再次封装?Python一大优势是有丰富的第三方包。可以站在牛人的肩膀上,让编程更简单,功能实现更快,也更完善。但有包还不够,因为包是通用的,普遍的。包含基本功能,或为了普遍性,而给了很多选项。用起来不顺手,或不够简洁。为了更进一步提高效率,就要再次封装。就是依据具体需求,将包重新写,做个性化处理。让工具更顺手,更方便。二、举例比如在U2中,有多种方法查找元素。通过text,describt…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

一、为何再次封装?

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

二、举例

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

说明:

1、使用了装饰器。

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

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

3、优化text。

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

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

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

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

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • python数组转化为字符串类型_python字符串类型

    python数组转化为字符串类型_python字符串类型python字符串数组转对象类型importjsoncontent=”'[{“_1″:”唐”,”_2″:12},{“_1″:”宋”,”_2″:2},{“_1″:”元”,”_2″:45}][{“_1″:”明”,”_2″:2},{“_1″:”清”,”_2″:4},{“_1″:”夏”,”_2″:5}][{“_1″:”商”,”_2″:11},{“_1″:”周”,”_2″:1},{“_1″:”晋”,”_2″:7}]”’#因为是字符串数组,一个字符串里含有三个数组,而每个数组里的对象都是以“,”隔开,

  • HTML+CSS,让div在屏幕中居中(水平居中+垂直居中)方法总结

    HTML+CSS,让div在屏幕中居中(水平居中+垂直居中)方法总结最近写网页经常需要将div在屏幕中居中显示,遂记录下几个常用的方法,都比较简单。水平居中直接加上<center>标签即可,或者设置margin:auto;当然也可以用下面的方法下面说两种在屏幕正中(水平居中+垂直居中)的方法放上示范的html代码:<body><divclass="main">

  • mysql添加唯一索引语句_mysql修改唯一索引语句

    mysql添加唯一索引语句_mysql修改唯一索引语句查看索引showindexfrom数据库表名altertable数据库addindex索引名称(数据库字段名称)PRIMARYKEY(主键索引)ALTERTABLE`table_name`ADDPRIMARYKEY(`column`)UNIQUE(唯一索引)ALTERTABLE`table_name`ADDUNIQUE(`column`)INDEX(普…

  • OpenProcessToken 的操作

    OpenProcessToken 的操作OpenProcessToken的操作要对一个任意进程(包括系统安全进程和服务进程)进行指定了写相关的访问权的OpenProcess操作,只要当前进程具有SeDeDebug权限就可以了。要是一个用户是Administrator或是被给予了相应的权限,就可以具有该权限。可是,就算我们用Administrator帐号对一个系统安全进程执行OpenProcess(PROCESS_ALL_AC

  • python基础知识点汇总

    python基础知识点汇总本文包括python基本知识:简单数据结构,数据结构类型(可变:列表,字典,集合,不可变:数值类型,字符串,元组),分支循环和控制流程,类和函数,文件处理和异常等等。(1)简单数据结构标识符第一个字符必须是字母表中字母或下划线_。 标识符的其他的部分由字母、数字和下划线组成。 标识符对大小写敏感。python中数字有四种类型:整数、布尔型、浮点数和复数。int(整数),如1,只有一种整数类型int,表示为长整型,没有python2中的Long。 bool(…

    2022年10月16日
  • js用户管理中心tab切换界面模板

    效果体验:http://hovertree.com/texiao/js/27/效果图如下:代码如下:转自:http://hovertree.com/h/bjaf/hovertreepanel.htm

    2021年12月24日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号