首頁 > 軟體

Python速成篇之像selenium一樣操作電腦詳解

2022-08-21 14:00:10

為了照顧新手我會寫的很詳細,若是隻是來尋找函數用法的小夥伴可以直接滑到末段小結哦

首先我們需要使用到的第三方庫是 pyautogui

可以用快捷鍵win+R輸入cmd在調出的命令列中輸入如下指令

pip install pyautogui

等待一小會下載安裝完成後即可直接呼叫啦

呼叫方式為:

import pyautogui

常用用法一

模擬滑鼠點選

pyautogui.click()

但是電腦它並不知道我們要點選那個位置,於是我們必須給它設定一個點選的螢幕座標(就是要告訴它你要點選哪裡)

假如我們要點選座標為(100,100),則在括號內填寫座標即可

pyautogui.click(100,100)

類似的還有點選滑鼠左鍵、中鍵、右鍵、左鍵雙擊

pyautogui.rightClick() #右鍵單擊
pyautogui.middleClick() # 中鍵單擊
pyautogui.doubleClick() # 左鍵雙擊
pyautogui.tripleClick() # 左鍵三擊

分享一個獲取滑鼠位置的函數:

x, y = pyautogui.position()

題外,有些小夥伴會覺得座標很難找,找不準。沒關係的,我考慮到了,我寫了段程式碼,你們直接複製貼上執行即可實時獲取到你想要的座標,收藏好不謝!

詳見:如何利用Python獲取滑鼠的實時位置

常用用法二

移動滑鼠到指定位置

pyautogui.moveTo()

這個方法需要傳入三個引數:X軸座標,Y軸座標,滑鼠從當前位置移動到傳入的(X,Y)位置的時間(單位為秒)。

假如要從滑鼠當前位置移動到座標為(100,100)的位置,移動的總時間為1,則只需這樣寫

pyautogui.moveTo(100 , 100, 1)

怎麼樣,是不是很簡單

常用用法三

移動滑鼠並操作動作

pyautogui.dragTo()

這個方法需要傳入四個引數,前三個傳入的引數及含義和上面完全一樣:X軸座標,Y軸座標,滑鼠從當前位置移動到傳入的(X,Y)位置的時間(單位為秒),你對滑鼠的操作

同樣我們舉個栗子。假如要從滑鼠當前位置移動到座標為(100,100)的位置,移動的總時間為1,並且是按著滑鼠的左鍵的(就是類似把一個檔案拖到別的地方去)

pyautogui.dragTo(100, 100, 1, button='left')

常用用法四

捲動滑鼠

pyautogui.scroll()

括號內填引數:clicks=正負引數(負數為向下移動,正數為向上移動)

假如我要向下移動100,則在括號內填入clicks=-100

pyautogui.scroll(slicks=-100)

反之同理

代替版:

把滑鼠移動到座標為(100,100)再向上捲動100可以這樣寫

pyautogui.scroll(clicks=100, x=100, y=100)

當然,懶得記這麼多的童鞋可以先移動滑鼠到指定位置再捲動也是一樣的效果

pyautogui.moveTo(100 , 100, 1)
pyautogui.scroll(clicks=100)

學習完滑鼠的操作後是不是覺得很簡單。

常用用法五

組合鍵操作

不過光能操作滑鼠可不夠,我們還得學會操作鍵盤

這時我們的可以用到一個方法:

pyautogui.hotkey()

括號內可傳入多個引數,假如我們要用快捷鍵“ctrl+c”來實現複製的操作,可以這樣寫:

pyautogui.hotkey('ctrl', 'c')

它是支援組合按鍵輸入的,同理也可以輸入“ctrl+a”全選、貼上等操作

我們可以使用pyautogui.KEYBOARD_KEY方法將函數所支援的所有按鍵列印出來

print(pyautogui.KEYBOARD_KEYS)

常用用法六

文字輸入:

1.使用typewrite函數,但是這種方法有個弊端,就是對中文不友好,只能輸入英文字元

pyautogui.typewrite()

假如我想輸入‘hello’,我們只需在括號內新增字串即可:

pyautogui.typewrite('hello')

2.想在文字方塊內輸入中文的話我們可以另闢蹊徑,哈哈哈其他方式我沒研究過,屬於投機取巧。

我們要安裝個很實用的第三方庫pypaperclip

它能把你要的資訊複製在貼上板,好我們現在安裝它,“win+R”輸入cmd開啟命令列輸入指令:

pip install pypaperclip

這個很小應該是秒完成的

匯入模組pypaperclip

import pypaperchlip

用法如下:

pypaperclip.copy('') #引號內放入中文或者英文執行即可複製到貼上板啦

末段小結

import pyautogui
#括號內傳入(x,y)
pyautogui.rightClick() #右鍵單擊
 
pyautogui.middleClick() # 中鍵單擊
 
pyautogui.doubleClick() # 左鍵雙擊
 
pyautogui.tripleClick() # 左鍵三擊
#獲取滑鼠位置
x, y = pyautogui.position()
#移動滑鼠
pyautogui.moveTo()
#拖動滑鼠
pyautogui.dragTo(100, 100, 1, button='left')
#捲動滑鼠
pyautogui.scroll()
#模擬操作鍵盤,支援組合鍵
pyautogui.hotkey()
#列印支援的所有按鍵
print(pyautogui.KEYBOARD_KEYS)
#複製到貼上板
import pypaperchlip
pypaperclip.copy('') #引號內放入中文或者英文執行即可複製到貼上板啦

到此這篇關於Python速成篇之像selenium一樣操作電腦詳解的文章就介紹到這了,更多相關Python操作電腦內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com