五月天六月婷婷开心激情,天使的性电影,三级韩国一区久久二区综合,五月婷婷久,九九精品在线视频,66精品综合久久久久久久

您的位置:首頁 >資訊 >

#pyautogui & pyperclip# 基于pyautogui & pyperclip的UI 自動

2023-01-12 14:25:46 程序員客棧

“文章所涉及內(nèi)容更多來自網(wǎng)絡(luò),在此聲明,并感謝知識的貢獻(xiàn)者!”

pyautogui—

PyAutoGUI簡介:


【資料圖】

pyautogui最方便的地方就是,你不需要去用代碼定位元素,你只需要用截圖就行,例如你要識別桌面上某個應(yīng)用,你只需要截圖這個應(yīng)用,然后通過這個截圖和當(dāng)前桌面對比即可找到圖標(biāo)的位置

pyautogui官網(wǎng):

https://pyautogui.readthedocs.io/en/latest/

pyautogui組件:

鼠標(biāo)、鍵盤、對話框、屏幕

Pyautogui教程:

import pyautogui as auto

import pyperclip

import time

#獲取屏幕大小

screen_width,screen_height=auto.size()

#獲取鼠標(biāo)位置(X,Y)

mouse_x,mouse_y=auto.position()

#根據(jù)坐標(biāo)系移動鼠標(biāo)

auto.moveTo(100,150)

#點擊鼠標(biāo)

auto.click()

#根據(jù)坐標(biāo)系點擊鼠標(biāo)

auto.click(100,150)

#尋找屏幕上的圖片并進(jìn)行點擊

auto.click("button.png")

#根據(jù)像素移動

auto.move(400,0)

#雙擊鼠標(biāo)

auto.doubleClick()

#點擊ESC鍵

auto.press("esc")

#按下shift鍵的同時,連按左鍵四下

with auto.hold("shift"):

auto.press(["left","left","left","left"])

#按下快捷鍵

auto.hotkey("ctrl","c")

#彈出窗口

auto.alert("This is the message todisplay.")

#模擬鍵盤輸入

pyautogui.write("Hello world!",interval=0.25)

#按壓鼠標(biāo)拖拽

while distance > 0:

pyautogui.drag(distance, 0, duration=0.5) # move right

distance -= 5

pyautogui.drag(0, distance, duration=0.5) # move down

pyautogui.drag(-distance, 0, duration=0.5) # move left

distance -= 5

pyautogui.drag(0,-distance, duration=0.5) # move up

pyautogui 前置操作

自動防故障功能

# 默認(rèn)這項功能為True, 這項功能意味著:當(dāng)鼠標(biāo)的指針在屏幕的最左上方,程序會報錯;目的是為了防止程序無法停止

pyautogui.FAILSAFE =False

停頓功能

# 意味著所有pyautogui的指令都要暫停一秒;其他指令不會停頓;這樣做,可以防止鍵盤鼠標(biāo)操作太快;

pyautogui.PAUSE = 1

pyautogui 鼠標(biāo)操作

獲取屏幕分辨率

print(pyautogui.size()) # 返回所用顯示器的分辨率;輸出:Size(width=1920,height=1080)

width,height = pyautogui.size()

print(width,height) # 1920 1080

移動到指定位置

# 將鼠標(biāo)移動到指定的坐標(biāo);duration的作用是設(shè)置移動時間,所有的gui函數(shù)都有這個參數(shù),而且都是可選參數(shù);

# 向右移動100px,向下移動500px, 這個過程持續(xù) 1 秒鐘;

pyautogui.moveTo(100,300,duration=1)

獲取鼠標(biāo)位置

print(pyautogui.position()) # 得到當(dāng)前鼠標(biāo)位置;輸出:Point(x=200,y=800)

鼠標(biāo)單擊

# 點擊鼠標(biāo)

pyautogui.click(10,10) # 鼠標(biāo)點擊指定位置,默認(rèn)左鍵

pyautogui.click(10,10,button="left") # 單擊左鍵

pyautogui.click(1000,300,button="right") # 單擊右鍵

pyautogui.click(1000,300,button="middle") # 單擊中間

鼠標(biāo)雙擊

pyautogui.doubleClick(10,10) # 指定位置,雙擊左鍵

pyautogui.rightClick(10,10) # 指定位置,雙擊右鍵

pyautogui.middleClick(10,10) # 指定位置,雙擊中鍵

鼠標(biāo)點擊與釋放

pyautogui.mouseDown() # 鼠標(biāo)按下

pyautogui.mouseUp() # 鼠標(biāo)釋放

鼠標(biāo)控制拖動事件

# 拖動到指定位置

# 將鼠標(biāo)拖動到指定的坐標(biāo);duration的作用是設(shè)置移動時間,所有的gui函數(shù)都有這個參數(shù),而且都是可選參數(shù)

pyautogui.dragTo(100,300,duration=1)

# 按方向拖動

# 向右拖動100px,向下拖動500px, 這個過程持續(xù) 1 秒鐘

pyautogui.dragRel(100,500,duration=4) # 第一個參數(shù)是左右移動像素值,第二個是上下

鼠標(biāo)滾輪

# 控制鼠標(biāo)滾動的函數(shù)是scroll(),傳入一個整數(shù)的參數(shù),說明向上或向下滾動多少個單位;單位根據(jù)操作系統(tǒng)不同而不同

pyautogui.scroll(300) # 向下滾動300個單位;

pyautogui 鍵盤操作

鍵盤輸入函數(shù)

-pyautogui.keyDown() :模擬按鍵按下;

-pyautogui.keyUp() :模擬按鍵釋放;

-pyautogui.press() :# 就是調(diào)用keyDown() & keyUp(),模擬一次按鍵;

-pyautogui.typewrite("this",0.5) :第一參數(shù)是輸入內(nèi)容,第二個參數(shù)是每個字符間的間隔時間;

-pyautogui.typewrite(["T","h","i","s"]):typewrite 還可以傳入單字母的列表;

鍵盤事件

pyautogui.keyDown("shift") # 按下shift

pyautogui.press("4") # 按下 4

pyautogui.keyUp("shift") # 釋放 shift

緩慢輸出

pyautogui.typewrite("$*……%……¥", 0.5)

鍵盤特殊順序輸出

pyautogui.typewrite(["T","i","s","left","left","h",]) # 輸出:This

特殊按鍵說明

鍵盤字符串 說明

enter(或return 或 \n) 回車

esc ESC鍵

shiftleft, shiftright 左右SHIFT鍵

altleft, altright 左右ALT鍵

ctrlleft, ctrlright 左右CTRL鍵

tab (\t) TAB鍵

backspace, delete BACKSPACE 、DELETE鍵

pageup, pagedown PAGE UP 和 PAGE DOWN鍵

home, end HOME和 END鍵

up, down, left,right 箭頭鍵

f1, f2, f3…. f12 F1…….F12鍵

volumemute, volumedown,volumeup 聲音變大變小靜音(有些鍵盤沒有)

pause PAUSE鍵,暫停鍵

capslock CAPSLOCK 鍵

numlock NUMLOCK 鍵

scrolllock SCROLLLOCK鍵

insert INSERT鍵

printscreen PRINT SCREEN鍵

winleft, winright Win鍵(windows )

command command鍵(Mac OS X )

option option(Mac OS X)

快捷鍵

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

pyautogui 屏幕操作

獲取屏幕分辨率

print(pyautogui.size()) # 返回所用顯示器的分辨率;輸出:Size(width=1920,height=1080)

width,height = pyautogui.size()

print(width,height) # 1920 1080

屏幕截圖

pyautogui 提供了一個方法screenshot(),可以返回一個Pillow的image對象

im = pyautogui.screenshot() # 返回屏幕的截圖,是一個Pillow的image對象

im.getpixel((500, 500)) # 返回im對象上,(500,500)這一點像素的顏色,是一個RGB元組

pyautogui.pixelMatchesColor(500,500,(12,120,400))# 是一個對比函數(shù),對比的是屏幕上(500,500)這一點像素的顏色,與所給的元素是否相同;

im = pyautogui.screenshot() # 返回屏幕的截圖,是一個Pillow的image對象

im.getpixel((500, 500)) # 返回im對象上,(500,500)這一點像素的顏色,是一個RGB元組

pyautogui.pixelMatchesColor(500,500,(12,120,400))# 是一個對比函數(shù),對比的是屏幕上(500,500)這一點像素的顏色,與所給的元素是否相同;

pyautogui 網(wǎng)頁登錄

pyautogui 網(wǎng)頁登錄

https://blog.csdn.net/m0_56238419/article/details/127697645

pyperclip

pyperclip簡介:

1. 可以復(fù)制剪貼板內(nèi)容

2. 可以向剪貼板寫入內(nèi)容

Pyperclip教程:

import pyperclip

# 將文本復(fù)制到剪貼板

pyperclip.copy("哈嘍")

# 從剪貼板粘貼文本

pyperclip.paste()

# 剪貼板上有非空字符串時返回字符串

import pyperclip

a = pyperclip.waitForPaste(5)

print(a)

# 剪貼板上有文本被更改時傳返回值

pyperclip.copy("original text")

a = pyperclip.waitForNewPaste(5)

print(a)

參考資料

參考資料

https://www.jb51.net/article/209694.htm

https://zhuanlan.zhihu.com/p/410967443

https://www.jb51.net/article/251803.htm

https://www.cnblogs.com/yuruhao/p/14634401.html

http://www.yuyanba.com/default.aspx/did92862

https://blog.csdn.net/pythonuser1/article/details/125986205

https://blog.csdn.net/weixin_45122104/article/details/125957915

http://t.zoukankan.com/LM791605490-p-10245807.html

標(biāo)簽: 指定位置 點擊鼠標(biāo) 模擬按鍵


        
精彩推薦

 

主站蜘蛛池模板: 亚洲日本一区二区三区在线不卡| 国产中文字幕电影| 亚洲伊人久久大香线蕉综合图片| 亚洲一级毛片免费在线观看| 99久久精品国产综合一区| 久久综合九色综合网站| 蜜桃丶麻豆91制片厂| 欧美性猛交| 日本按摩xxxx| 亚洲欧美综合区自拍另类| 欧美一级欧美三级在线观看| 欧美精品亚洲精品日韩专区| 婷婷人人爽人人爽人人片| 美女扒开屁股让男人桶| 欧美最猛黑人xxxx| 国内一级黄色片| 亚洲精品无码专区在线播放| 国内精品伊人久久久影视| eeuss影院www在线观看免费| 在线免费中文字幕| 操大逼片| 十七岁日本片| 福利久草| 波多野结大战三个黑鬼 | 男人猛桶女人| 小明天天看成人免费看| 羞羞漫画小舞被黄漫免费| 好爽好深胸好大好多水视频| 美女让我桶| 国产精品99久久久久久www| 精品一区二区三区3d动漫| 不卡av电影在线| 好男人在线社区www| 2021天天操| 亚洲视频手机在线| 国产欧美日韩一区二区三区| 美国十次啦色| heyzo北条麻妃久久| 欧美黄色免费看| 宝宝才三根手指头就湿成这样| 亚洲国产视频网|