對Python第三方庫,再次封裝
一、為何再次封裝?
Python一大優(yōu)勢是有豐富的第三方包??梢哉驹谂H说募绨蛏?,讓編程更簡單,功能實現(xiàn)更快,也更完善。但有包還不夠,因為包是通用的,普遍的。包含基本功能,或為了普遍性,而給了很多選項。用起來不順手,或不夠簡潔。為了更進一步提高效率,就要再次封裝。就是依據(jù)具體需求,將包重新寫,做個性化處理。讓工具更順手,更方便。
二、舉例
比如在U2中,有多種方法查找元素。通過text,describtion, id。在實際使用時,如果不封裝,就需要寫很多重復的代碼。比如最多的用文本(text)定位和點擊。就得寫,d(text='開始').click(),經(jīng)過封裝就可以這樣寫,u.click_('開始')。如果再復雜的,用匹配定位,不封裝就更復雜了。而封裝后就可以寫,u.click_('看視頻',contains=True)。具體貼一下我封裝的查找方法。

說明:
1、使用了裝飾器。
因為自動化工具,在查找不到元素時,往往采用報錯的方式來提醒。在實際應用時,每次都寫try,來捕捉異常,就有很多重復代碼。而裝飾器可以很方便,套一個捕捉異常,來減少代碼。
2、使用by_which來判定是用什么來定位,timeout確定等待時間,contains確定是否用包含文字來定位。有默認值,可以有效減少代碼。
3、優(yōu)化text。
在手機里有兩種文本,一種是text,一種是describtion。剛開始我是分開處理的,后面才想到直接用代碼來處理,而不用管是哪種文本。
4、其他針對元素的操作都是基于find這個方法,可以有效減少代碼。比如click_。

好了。因為基本完成了代碼,只是盯著看哪里有錯,做優(yōu)化,比較閑。所以有空做這個。我會在評論區(qū)貼分享的地址。需要請自取。
再次強調:1、代碼還不完善,會有錯誤。2、適合懂python的朋友。3、腳本使用有限制,可去網(wǎng)上尋找其他auto.js的腳本。