如何利用python獲取鼠標(biāo)點(diǎn)擊的實(shí)時(shí)位置案例
前言
Python 獲取鼠標(biāo)點(diǎn)擊時(shí)的x、y坐標(biāo)位置
PyAutoGUI是一個(gè)Python庫(kù),它提供了一些用于控制鼠標(biāo)、鍵盤(pán)和屏幕的函數(shù)。
安裝第三方庫(kù) pyautogui
pip install pyautogui
# 案例獲取鼠標(biāo)的位置,方便復(fù)制我們定位的鼠標(biāo)坐標(biāo)點(diǎn)到代碼中
import pyautogui
import time
# 獲取鼠標(biāo)位置
def get_mouse_positon():
time.sleep(5) # 準(zhǔn)備時(shí)間
print('開(kāi)始獲取鼠標(biāo)位置')
try:
for i in range(10):
# Get and print the mouse coordinates.
x, y = pyautogui.position()
positionStr = '鼠標(biāo)坐標(biāo)點(diǎn)(X,Y)為:{},{}'.format(str(x).rjust(4), str(y).rjust(4))
pix = pyautogui.screenshot().getpixel((x, y)) # 獲取鼠標(biāo)所在屏幕點(diǎn)的RGB顏色
positionStr += ' RGB:(' + str(pix[0]).rjust(3) + ',' + str(pix[1]).rjust(3) + ',' + str(pix[2]).rjust(
3) + ')'
print(positionStr)
time.sleep(0.5) # 停頓時(shí)間
except:
print('獲取鼠標(biāo)位置失敗')
if __name__ == "__main__":
get_mouse_positon()運(yùn)行上述代碼,當(dāng)你點(diǎn)擊屏幕的任意位置時(shí),程序?qū)?huì)輸出鼠標(biāo)點(diǎn)擊時(shí)的x、y坐標(biāo)位置
pyautogui 其他常用函數(shù)
moveTo(x, y) # 將鼠標(biāo)移動(dòng)到指定的 x y 坐標(biāo) . moveRel(xOffset, yOffset) # 相對(duì)于當(dāng)前位置移動(dòng)鼠標(biāo) . dragTo(x, y) # 按下左鍵移動(dòng)鼠標(biāo) . dragRel(xOffset, yOffset) # 按下左鍵 , 相對(duì)于當(dāng)前位置移動(dòng)鼠標(biāo) . click(x, y, button) # 模擬點(diǎn)擊 (默認(rèn)是左鍵) . rightClick() # 模擬右鍵點(diǎn)擊。 middleClick() # 模擬中鍵點(diǎn)擊。 doubleClick() # 模擬左鍵雙擊。 mouseDown(x, y, button) # 模擬在 x、y 處按下指定鼠標(biāo)按鍵。 mouseUp(x, y, button) # 模擬在 x、y 處釋放指定鍵。 scroll(units) # 模擬滾動(dòng)滾輪。正參數(shù)表示向上滾動(dòng), 負(fù)參數(shù)表示向下滾動(dòng)。 typewrite(message) # 鍵入給定消息字符串中的字符。 typewrite([key1, key2, key3]) # 鍵入給定鍵字符串。 press(key) # 按下并釋放給定鍵。 keyDown(key) # 模擬按下給定鍵。 keyUp(key) # 模擬釋放給定鍵。 hotkey([key1, key2, key3]) # 模擬按順序按下給定鍵字符串, 然后以相反的順序釋放。 screenshot() # 返回屏幕快照的 Image 對(duì)象
附: 移動(dòng)鼠標(biāo)并點(diǎn)擊
import time
import pyautogui
x,y = pyautogui.position() #返回鼠標(biāo)的坐標(biāo)
posStr="Position:"+str(x).rjust(4)+','+str(y).rjust(4)
print (posStr)#打印坐標(biāo)
x, y = 1000, 534 # 鼠標(biāo)需要移動(dòng)到的位置
num_seconds = 2 # 將鼠標(biāo)移動(dòng)到指定坐標(biāo)的間隔時(shí)間
time.sleep(8) # 延遲8秒
pyautogui.moveTo(x, y, duration=num_seconds)
time.sleep(3) # 延遲3秒
i = 60
while i:
i -= 1
time.sleep(5)
pyautogui.click()
總結(jié)
到此這篇關(guān)于如何利用python獲取鼠標(biāo)點(diǎn)擊的實(shí)時(shí)位置的文章就介紹到這了,更多相關(guān)python獲取鼠標(biāo)點(diǎn)擊實(shí)時(shí)位置內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python接口測(cè)試get請(qǐng)求過(guò)程詳解
這篇文章主要介紹了python接口測(cè)試 get請(qǐng)求過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-02-02
Python中easy_install 和 pip 的安裝及使用
本篇文章主要介紹了Python中easy_install 和 pip 的安裝及使用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06
Python實(shí)現(xiàn)半角轉(zhuǎn)全角的方法示例
本文介紹了使用Python實(shí)現(xiàn)半角字符到全角字符的轉(zhuǎn)換,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-01-01
解決tensorflow模型壓縮的問(wèn)題_踩坑無(wú)數(shù),總算搞定
這篇文章主要介紹了解決tensorflow模型壓縮的問(wèn)題_踩坑無(wú)數(shù),總算搞定!希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-03-03
python3報(bào)錯(cuò)check_hostname?requires?server_hostname的解決
這篇文章主要介紹了python3報(bào)錯(cuò)check_hostname?requires?server_hostname的解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-12-12

