国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Python自動(dòng)化工具Pywinauto、Pyautogui

這篇具有很好參考價(jià)值的文章主要介紹了Python自動(dòng)化工具Pywinauto、Pyautogui。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

Python的優(yōu)雅、簡(jiǎn)潔與強(qiáng)大深深地吸引著我們,它海量的工具包為我們的工作提供了強(qiáng)有力的支持。在自動(dòng)化工作中,Python更是一把利器,數(shù)十行代碼就能干凈利落地完成很多繁瑣重復(fù)的工作。本文在這里將介紹Python中四種常用的自動(dòng)化工具包。

Pywin32

Pywin32是一個(gè)Python庫(kù),為python提供訪問(wèn)Windows API的擴(kuò)展,提供了齊全的Windows常量、接口、線程以及COM機(jī)制等等。這個(gè)庫(kù)里面最重要的三個(gè)模塊win32api、win32gui和win32con。

查找句柄:窗體是指窗口到文本框的所有控件,每個(gè)窗體都有獨(dú)立的句柄。要操作任意一個(gè)窗體,都需要找到這個(gè)窗體的句柄。我們可以用win32gui模塊中的FindWindow函數(shù)和FindWindowEx函數(shù)(子窗體函數(shù))來(lái)得到指定窗體的句柄。(使用Spy++或Inspect可以很方便地查看目標(biāo)窗口的窗口名、類(lèi)名和句柄)

菜單操作:窗口的菜單就像窗口的標(biāo)題欄一樣,是窗口自身的一部分,不是其他窗體控件,也就沒(méi)有辦法用FindWindow和FindWindowEx返回句柄。我們可以用win32gui模塊中的GetMenu,GetSubMenu和GetMenuItemID函數(shù)來(lái)操作菜單。

控件操作:控件的操作基于win32的消息機(jī)制,我們可以使用win32api模塊的SendMessage函數(shù)向窗體發(fā)送消息來(lái)進(jìn)行操作。同時(shí)也可以利用mouse_event、keybd_event等函數(shù)模擬鼠標(biāo)和鍵盤(pán)對(duì)控件進(jìn)行操作。

下面的代碼實(shí)現(xiàn)了記事本的自動(dòng)保存。

pyautogui和pywinauto優(yōu)缺點(diǎn),python,自動(dòng)化,windows

?

Pywinauto

Pywinauto是實(shí)現(xiàn)Windows窗口程序自動(dòng)化的一把利器,它主要操作于Windows標(biāo)準(zhǔn)圖形界面。Pywinauto基于Pywin32,其最主要功能為對(duì)Windows標(biāo)準(zhǔn)控件的一系列動(dòng)作可編程處理,包括對(duì)窗口的指定、鼠標(biāo)或鍵盤(pán)操作、獲得控件屬性等等。相比起Pywin32,Pywinauto使用起來(lái)更方便穩(wěn)定,對(duì)中文的支持度也更好。下面簡(jiǎn)單地介紹一下Pywinauto的使用。

首先,利用Spy++或Inspec判斷窗口程序開(kāi)發(fā)語(yǔ)言是什么,即確定backend。Pywinauto支持“win32”和“uia”兩種backend。接著,從Pywinauto.application中導(dǎo)入Application模塊,利用Application().start函數(shù)或Application().connect函數(shù)關(guān)聯(lián)到一個(gè)應(yīng)用。如:app = Application(backend="uia").start('notepad.exe')。此后,利用正則表達(dá)式進(jìn)行模糊匹配找到應(yīng)用app的一個(gè)窗體,如:dlg = app.window_(title_re = ".*Part of Title.*")。最后,可以對(duì)窗體上的控件模擬鼠標(biāo)或鍵盤(pán)的操作,實(shí)現(xiàn)應(yīng)用窗口的自動(dòng)操作。

下面代碼實(shí)現(xiàn)了對(duì)記事本菜單的操作和鍵盤(pán)輸入。

pyautogui和pywinauto優(yōu)缺點(diǎn),python,自動(dòng)化,windows

?

Pyautogui

Pyautogui是另一個(gè)常用的基于Python的GUI自動(dòng)化工具,能夠支持多個(gè)平臺(tái)。Pyautogui主要是用程序自動(dòng)控制鼠標(biāo)和鍵盤(pán)操作。雖然Pyautogui和Pywinauto都是實(shí)現(xiàn)GUI 的自動(dòng)操作,但兩者的側(cè)重點(diǎn)不同。Pyautogui側(cè)重于鼠標(biāo)、鍵盤(pán)、截圖等功能,且是基于圖像匹配進(jìn)行定位的,而Pywinauto側(cè)重與對(duì)系統(tǒng)的操作,雖然也有鍵盤(pán)和鼠標(biāo)的模擬操作,但核心上還是軟件上的操作更多。兩者各有所長(zhǎng),需根據(jù)實(shí)際情況選擇合適的。

Pyautogui對(duì)鼠標(biāo)的移動(dòng)、點(diǎn)擊、拖拽,鍵盤(pán)按鍵輸入、按住操作,以及鼠標(biāo)+鍵盤(pán)的熱鍵同時(shí)按住等操作都能準(zhǔn)確模擬,可以說(shuō)手能動(dòng)的都可以,并且簡(jiǎn)單方便。但由于控件的定位依賴于圖像匹配,所以得事先保存好控件的截圖,然后在操作時(shí)自動(dòng)截取屏幕,利用圖像匹配找到控件在屏幕的像素位置,再將鼠標(biāo)自動(dòng)移至控件處點(diǎn)擊。Pyautogui自帶的圖像匹配函數(shù)精度不是很高,可以加入opencv中的匹配函數(shù)來(lái)代替,更加準(zhǔn)確方便。

下面代碼實(shí)現(xiàn)了百度網(wǎng)盤(pán)的自動(dòng)登錄。

Selenium with Python

Selenium與上面三種工具有點(diǎn)不同,它的自動(dòng)化對(duì)象是各種瀏覽器,包括Chrome、Safari、FireFox、IE等主流界面式的瀏覽器,常在爬蟲(chóng)應(yīng)用中發(fā)揮很大的作用。Selenium最為主要的模塊是Webdriver模塊。Webdriver提供了一系列瀏覽器對(duì)象定位的方法,常用的有id、name、class name、tag name、xpath、link text等等。定位對(duì)象后,Webdriver提供了操作對(duì)象的方法,包括清除內(nèi)容clear、模擬輸入send_keys、單擊鼠標(biāo)click、提交表單submit等等。有時(shí)候?yàn)榱吮WC腳本運(yùn)行的穩(wěn)定性,需要在腳本中添加等待時(shí)間,有sleep、implicitly_wait和WebDriverWait三種方法選擇。此外在多表單切換、多窗口切換、警告窗口處理、上傳文件、獲取驗(yàn)證碼等方面Webdriver都有相應(yīng)的方法,功能強(qiáng)大。

下面的代碼實(shí)現(xiàn)了模擬提交搜索功能,首先等頁(yè)面加載完成,然后輸入到搜索框文本,點(diǎn)擊提交。

pyautogui和pywinauto優(yōu)缺點(diǎn),python,自動(dòng)化,windows

?

?

本文分別介紹了Pywin32、Pywinauto、Pyautogui和Selenium with Python四種基于Python的自動(dòng)化工具包。使用這些工具包可以讓繁瑣的工作自己動(dòng)起來(lái),實(shí)現(xiàn)自動(dòng)化,解放我們的雙手,大大地提高工作效率。不過(guò)在智能方面還有很大的提升空間,這也是未來(lái)努力的方向。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-588691.html

到了這里,關(guān)于Python自動(dòng)化工具Pywinauto、Pyautogui的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • PC端windows自動(dòng)化:pywinauto(四)鼠標(biāo)和鍵盤(pán)操作

    pywinauto自帶的鼠標(biāo)操作有些時(shí)候并不能完全滿足要求,可以調(diào)用mouse的方法 導(dǎo)入: 常見(jiàn)操作: ? 導(dǎo)入: pywinauto模擬操作鍵盤(pán),需要使用到 pywinauto.keyboard.send_keys這個(gè)方法: ◆ pywinauto.keyboard.send_key 可以通過(guò)鍵盤(pán)完成以下操作:全選(ctrl+A) 復(fù)制(Ctrl+C) 粘貼(Ctrl+V) 回車(chē)(Ent

    2024年02月03日
    瀏覽(22)
  • PC端windows自動(dòng)化:pywinauto(三)控件定位方法和控件可用方法

    操作控件需要以下幾個(gè)步驟:? 第一步 實(shí)例化要操作的進(jìn)程:得到的app是Application對(duì)象。 第二步 選擇窗口 :app.window(\\\'一個(gè)或多個(gè)篩選條件\\\') 得到的窗口是WindowSpecification對(duì)象 第三步:基于WindowSpecification對(duì)象使用其方法再往下查找,定位到具體的控件 第四步:使用控件的方法

    2024年01月20日
    瀏覽(34)
  • python自動(dòng)化測(cè)試- 自動(dòng)化框架及工具

    python自動(dòng)化測(cè)試- 自動(dòng)化框架及工具

    手續(xù)的關(guān)于測(cè)試的方法論,都是建立在之前的文章里面提到的觀點(diǎn): 功能測(cè)試不建議做自動(dòng)化 接口測(cè)試性價(jià)比最高 接口測(cè)試可以做自動(dòng)化 后面所談到的? 測(cè)試自動(dòng)化 ?也將圍繞著? 接口自動(dòng)化 ?來(lái)介紹。 本系列選擇的測(cè)試語(yǔ)言是 python 腳本語(yǔ)言。由于其官方文檔已經(jīng)對(duì)原理

    2024年02月22日
    瀏覽(32)
  • 如何使用Python自動(dòng)化測(cè)試工具Selenium進(jìn)行網(wǎng)頁(yè)自動(dòng)化?

    如何使用Python自動(dòng)化測(cè)試工具Selenium進(jìn)行網(wǎng)頁(yè)自動(dòng)化?

    Selenium 是一個(gè)流行的Web自動(dòng)化測(cè)試框架, 它支持多種編程語(yǔ)言和瀏覽器,并提供了豐富的API和工具來(lái)模擬用戶在瀏覽器中的行為 。 Selenium可以通過(guò)代碼驅(qū)動(dòng)瀏覽器自動(dòng)化測(cè)試流程,包括頁(yè)面導(dǎo)航、元素查找、數(shù)據(jù)填充、點(diǎn)擊操作等。 與PyAutoGUI和AutoIt相比, Selenium更適合于處

    2023年04月09日
    瀏覽(111)
  • python自動(dòng)化測(cè)試工具selenium

    selenium 是網(wǎng)頁(yè)應(yīng)用中最流行的自動(dòng)化測(cè)試工具,可以用來(lái)做自動(dòng)化測(cè)試或者瀏覽器爬蟲(chóng)等。官網(wǎng)地址為:Selenium。相對(duì)于另外一款web自動(dòng)化測(cè)試工具QTP來(lái)說(shuō)有如下優(yōu)點(diǎn): 免費(fèi)開(kāi)源輕量級(jí),不同語(yǔ)言只需要一個(gè)體積很小的依賴包 支持多種系統(tǒng),包括Windows,Mac,Linux 支持多種瀏

    2024年02月08日
    瀏覽(26)
  • Python開(kāi)源自動(dòng)化工具Playwright安裝及介紹

    Python開(kāi)源自動(dòng)化工具Playwright安裝及介紹

    目錄 前言 1、Playwright介紹 2、Playwright安裝 3、實(shí)操演示 4、小結(jié) 總結(jié): 微軟開(kāi)源了一個(gè)非常強(qiáng)大的自動(dòng)化項(xiàng)目叫 playwright-python 它支持主流的瀏覽器,包含: Chrome、Firefox、Safari、Microsoft Edge 等,同時(shí)支持以 無(wú)頭模式、有頭模式 運(yùn)行,并提供了同步、異步的 API,可以結(jié)合 P

    2024年02月16日
    瀏覽(24)
  • Python自動(dòng)化測(cè)試工具selenium使用指南

    Python自動(dòng)化測(cè)試工具selenium使用指南

    概述 selenium 是網(wǎng)頁(yè)應(yīng)用中最流行的自動(dòng)化測(cè)試工具,可以用來(lái)做自動(dòng)化測(cè)試或者瀏覽器爬蟲(chóng)等。官網(wǎng)地址為:相對(duì)于另外一款web自動(dòng)化測(cè)試工具QTP來(lái)說(shuō)有如下優(yōu)點(diǎn): 免費(fèi)開(kāi)源輕量級(jí),不同語(yǔ)言只需要一個(gè)體積很小的依賴包 支持多種系統(tǒng),包括Windows,Mac,Linux 支持多種瀏覽器

    2024年02月04日
    瀏覽(80)
  • Windows GUI自動(dòng)化控制工具之python uiAutomation

    Windows GUI自動(dòng)化控制工具之python uiAutomation

    對(duì) Windows GUI進(jìn)行自動(dòng)化控制的工具有很多,比如pywinauto、pyautogui、pywin32、Autoit、airtest、UIAutomation等,UI Automation API是微軟提供的自動(dòng)化框架,可在支持 Windows Presentation Foundation (WPF) 的所有操作系統(tǒng)上使用,支持的應(yīng)用類(lèi)型更多。本文介紹封裝了UI Automation API的Python uiautomatio

    2024年02月13日
    瀏覽(96)
  • python自動(dòng)化測(cè)試工具selenium使用指南 ,絕對(duì)能幫到你

    python自動(dòng)化測(cè)試工具selenium使用指南 ,絕對(duì)能幫到你

    目錄 概述 python+selenium環(huán)境安裝 使用selenium啟動(dòng)瀏覽器 selenium頁(yè)面加載等待和檢測(cè) 使用time.sleep()等待 使用implicitly_wait設(shè)置最長(zhǎng)等待時(shí)間 使用WebDriverWait設(shè)置等待條件 檢測(cè)document是否加載完成 selenium元素定位和讀取 查找元素 dom元素交互 查找元素失敗處理 selenium交互控制 Actio

    2024年02月08日
    瀏覽(49)
  • Python Selenium4.3.0(新語(yǔ)法) web自動(dòng)化測(cè)試工具

    1 介紹 Selenium是一個(gè)用于Web應(yīng)用程序測(cè)試的工具。Selenium測(cè)試直接運(yùn)行在瀏覽器中,就像真正的用戶在操作一樣。 支持的瀏覽器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera,Edge等 這個(gè)工具的主要功能包括:測(cè)試與瀏覽器的兼容性——測(cè)試應(yīng)用程序看是否能夠

    2024年01月24日
    瀏覽(34)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包