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的脚本。

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

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

(0)
上一篇 2022年10月14日 上午8:00
下一篇 2022年10月14日 上午8:00


相关推荐

  • 高等数学:第五章 定积分(2)换元积分法 分部积分法 广义积分

    高等数学:第五章 定积分(2)换元积分法 分部积分法 广义积分§5.4  定积分的换元法一、换元公式【定理】若1、函数在上连续;2、函数在区间上单值且具有连续导数;3、当在上变化时,的值在上变化,且 ,  则有                          (1)证明:(1)式中的被积函数在其积分区间上均是连续,故(1)式两端的定积分存在。且(1)式两端的被积函数的原函数均是存在的。假设是在上的一个原函数,据

    2025年5月26日
    5
  • myeclipse8.5注册码怎么用_java生成不重复验证码

    myeclipse8.5注册码怎么用_java生成不重复验证码注册码:用户名:myeclipse5.5注册码:zLR7ZL-655444-60536056302480798注册机代码:importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStreamReader;importjava.io.PrintStream;

    2022年9月30日
    4
  • 2026最新 OpenClaw 本地部署指南:解决 OpenAI API Key 获取难题,零代码接入企业微信机器人

    2026最新 OpenClaw 本地部署指南:解决 OpenAI API Key 获取难题,零代码接入企业微信机器人

    2026年3月16日
    2
  • mybatis的两种分页方式:RowBounds和PageHelper「建议收藏」

    mybatis的两种分页方式:RowBounds和PageHelper「建议收藏」原理:拦截器。使用方法:RowBounds:在mapper.java中的方法中传入RowBounds对象。RowBoundsrowBounds=newRowBounds(10,100);//offset起始行//limit是当前页显示多少条数据publicList<ReportDatainfo>findRecords(ReportDatainforeportD…

    2025年12月5日
    7
  • 从零开始学python微课视频版-从零开始学Python(微课视频版)

    从零开始学python微课视频版-从零开始学Python(微课视频版)基本信息书名:从零开始学Python(微课视频版):89.80元作者:何明编著著出版社:中国水利水电出版社出版日期:2020_04_01ISBN:9787517083818字数:644000页码:390版次:1装帧:平装开本:16开商品重量:编辑推荐这是一本针对零基础的读者设计的Python程序设计的入门教程、视频教程。该书以基础知识、实例和实战案例相结合的形式全面详尽地介绍了Python编程…

    2022年6月3日
    44
  • centos su命令

    centos su命令有很多指令都只可以用 root 身份去执行 因此我们需要成为 root 用户 要这样做 我们可以使用 su 指令 更替用户 su 指令有下列格式 su 或 su nbsp 但我们最经常是用 su 指令来成为 root 用户 su root 或 suroot 如果不指定用户名称 缺省的用户是 root 因此以上的指令可以缩短为 su 或 su nbsp 然而这两个指令有不同的特

    2026年3月19日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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