Python速成篇之像selenium一樣操作電腦詳解
為了照顧新手我會寫的很詳細(xì),若是只是來尋找函數(shù)用法的小伙伴可以直接滑到末段小結(jié)哦
首先我們需要使用到的第三方庫是 pyautogui
可以用快捷鍵win+R輸入cmd在調(diào)出的命令行中輸入如下指令
pip install pyautogui
等待一小會下載安裝完成后即可直接調(diào)用啦
調(diào)用方式為:
import pyautogui
常用用法一
模擬鼠標(biāo)點(diǎn)擊
pyautogui.click()
但是電腦它并不知道我們要點(diǎn)擊那個(gè)位置,于是我們必須給它設(shè)置一個(gè)點(diǎn)擊的屏幕坐標(biāo)(就是要告訴它你要點(diǎn)擊哪里)
假如我們要點(diǎn)擊坐標(biāo)為(100,100),則在括號內(nèi)填寫坐標(biāo)即可
pyautogui.click(100,100)
類似的還有點(diǎn)擊鼠標(biāo)左鍵、中鍵、右鍵、左鍵雙擊
pyautogui.rightClick() #右鍵單擊 pyautogui.middleClick() # 中鍵單擊 pyautogui.doubleClick() # 左鍵雙擊 pyautogui.tripleClick() # 左鍵三擊
分享一個(gè)獲取鼠標(biāo)位置的函數(shù):
x, y = pyautogui.position()
題外,有些小伙伴會覺得坐標(biāo)很難找,找不準(zhǔn)。沒關(guān)系的,我考慮到了,我寫了段代碼,你們直接復(fù)制粘貼運(yùn)行即可實(shí)時(shí)獲取到你想要的坐標(biāo),收藏好不謝!
詳見:如何利用Python獲取鼠標(biāo)的實(shí)時(shí)位置
常用用法二
移動鼠標(biāo)到指定位置
pyautogui.moveTo()
這個(gè)方法需要傳入三個(gè)參數(shù):X軸坐標(biāo),Y軸坐標(biāo),鼠標(biāo)從當(dāng)前位置移動到傳入的(X,Y)位置的時(shí)間(單位為秒)。
假如要從鼠標(biāo)當(dāng)前位置移動到坐標(biāo)為(100,100)的位置,移動的總時(shí)間為1,則只需這樣寫
pyautogui.moveTo(100 , 100, 1)
怎么樣,是不是很簡單
常用用法三
移動鼠標(biāo)并操作動作
pyautogui.dragTo()
這個(gè)方法需要傳入四個(gè)參數(shù),前三個(gè)傳入的參數(shù)及含義和上面完全一樣:X軸坐標(biāo),Y軸坐標(biāo),鼠標(biāo)從當(dāng)前位置移動到傳入的(X,Y)位置的時(shí)間(單位為秒),你對鼠標(biāo)的操作
同樣我們舉個(gè)栗子。假如要從鼠標(biāo)當(dāng)前位置移動到坐標(biāo)為(100,100)的位置,移動的總時(shí)間為1,并且是按著鼠標(biāo)的左鍵的(就是類似把一個(gè)文件拖到別的地方去)
pyautogui.dragTo(100, 100, 1, button='left')
常用用法四
滾動鼠標(biāo)
pyautogui.scroll()
括號內(nèi)填參數(shù):clicks=正負(fù)參數(shù)(負(fù)數(shù)為向下移動,正數(shù)為向上移動)
假如我要向下移動100,則在括號內(nèi)填入clicks=-100
pyautogui.scroll(slicks=-100)
反之同理
代替版:
把鼠標(biāo)移動到坐標(biāo)為(100,100)再向上滾動100可以這樣寫
pyautogui.scroll(clicks=100, x=100, y=100)
當(dāng)然,懶得記這么多的童鞋可以先移動鼠標(biāo)到指定位置再滾動也是一樣的效果
pyautogui.moveTo(100 , 100, 1) pyautogui.scroll(clicks=100)
學(xué)習(xí)完鼠標(biāo)的操作后是不是覺得很簡單。
常用用法五
組合鍵操作
不過光能操作鼠標(biāo)可不夠,我們還得學(xué)會操作鍵盤
這時(shí)我們的可以用到一個(gè)方法:
pyautogui.hotkey()
括號內(nèi)可傳入多個(gè)參數(shù),假如我們要用快捷鍵“ctrl+c”來實(shí)現(xiàn)復(fù)制的操作,可以這樣寫:
pyautogui.hotkey('ctrl', 'c')
它是支持組合按鍵輸入的,同理也可以輸入“ctrl+a”全選、粘貼等操作
我們可以使用pyautogui.KEYBOARD_KEY方法將函數(shù)所支持的所有按鍵打印出來
print(pyautogui.KEYBOARD_KEYS)
常用用法六
文字輸入:
1.使用typewrite函數(shù),但是這種方法有個(gè)弊端,就是對中文不友好,只能輸入英文字符
pyautogui.typewrite()
假如我想輸入‘hello’,我們只需在括號內(nèi)添加字符串即可:
pyautogui.typewrite('hello')
2.想在文本框內(nèi)輸入中文的話我們可以另辟蹊徑,哈哈哈其他方式我沒研究過,屬于投機(jī)取巧。
我們要安裝個(gè)很實(shí)用的第三方庫pypaperclip
它能把你要的信息復(fù)制在粘貼板,好我們現(xiàn)在安裝它,“win+R”輸入cmd打開命令行輸入指令:
pip install pypaperclip
這個(gè)很小應(yīng)該是秒完成的
導(dǎo)入模塊pypaperclip
import pypaperchlip
用法如下:
pypaperclip.copy('') #引號內(nèi)放入中文或者英文運(yùn)行即可復(fù)制到粘貼板啦
末段小結(jié)
import pyautogui
#括號內(nèi)傳入(x,y)
pyautogui.rightClick() #右鍵單擊
pyautogui.middleClick() # 中鍵單擊
pyautogui.doubleClick() # 左鍵雙擊
pyautogui.tripleClick() # 左鍵三擊
#獲取鼠標(biāo)位置
x, y = pyautogui.position()
#移動鼠標(biāo)
pyautogui.moveTo()
#拖動鼠標(biāo)
pyautogui.dragTo(100, 100, 1, button='left')
#滾動鼠標(biāo)
pyautogui.scroll()
#模擬操作鍵盤,支持組合鍵
pyautogui.hotkey()
#打印支持的所有按鍵
print(pyautogui.KEYBOARD_KEYS)
#復(fù)制到粘貼板
import pypaperchlip
pypaperclip.copy('') #引號內(nèi)放入中文或者英文運(yùn)行即可復(fù)制到粘貼板啦
到此這篇關(guān)于Python速成篇之像selenium一樣操作電腦詳解的文章就介紹到這了,更多相關(guān)Python操作電腦內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
pytorch LayerNorm參數(shù)的用法及計(jì)算過程
這篇文章主要介紹了pytorch LayerNorm參數(shù)的用法及計(jì)算過程,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-05-05
python2.7的flask框架之引用js&css等靜態(tài)文件的實(shí)現(xiàn)方法
今天小編就為大家分享一篇python2.7的flask框架之引用js&css等靜態(tài)文件的實(shí)現(xiàn)方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-08-08
Python大數(shù)據(jù)用Numpy Array的原因解讀
一個(gè)Numpy數(shù)組由許多值組成,所有值的類型是相同的,Numpy 是Python科學(xué)計(jì)算的一個(gè)核心模塊,本文重點(diǎn)給大家介紹Python大數(shù)據(jù)Numpy Array的相關(guān)知識,感興趣的朋友一起看看吧2022-02-02
python統(tǒng)計(jì)RGB圖片某像素的個(gè)數(shù)案例
這篇文章主要介紹了python統(tǒng)計(jì)RGB圖片某像素的個(gè)數(shù)案例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-03-03
Python?selenium實(shí)現(xiàn)大麥網(wǎng)自動購票過程解析
大麥網(wǎng)是中國綜合類現(xiàn)場娛樂票務(wù)營銷平臺,業(yè)務(wù)覆蓋演唱會、?話劇、音樂劇、體育賽事等領(lǐng)域,今天我們要用代碼來實(shí)現(xiàn)他的購票過程,感興趣的朋友一起看看吧2022-05-05

