如何利用python獲取鼠標(biāo)點(diǎn)擊的實(shí)時(shí)位置案例
前言
Python 獲取鼠標(biāo)點(diǎn)擊時(shí)的x、y坐標(biāo)位置
PyAutoGUI是一個(gè)Python庫,它提供了一些用于控制鼠標(biāo)、鍵盤和屏幕的函數(shù)。
安裝第三方庫 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('開始獲取鼠標(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把csv數(shù)據(jù)寫入list和字典類型的變量腳本方法
今天小編就為大家分享一篇Python把csv數(shù)據(jù)寫入list和字典類型的變量腳本方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-06-06
pytorch中的model=model.to(device)使用說明
這篇文章主要介紹了pytorch中的model=model.to(device)使用說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-05-05
python創(chuàng)建列表和向列表添加元素的實(shí)現(xiàn)方法
下面小編就為大家分享一篇python創(chuàng)建列表和向列表添加元素的實(shí)現(xiàn)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2017-12-12
python使用pandas自動(dòng)化合并Excel文件的實(shí)現(xiàn)方法
在數(shù)據(jù)分析和處理工作中,經(jīng)常會(huì)遇到需要合并多個(gè)Excel文件的情況,本文介紹了一種使用Python編程語言中的Pandas庫和Glob模塊來自動(dòng)化合并Excel文件的方法,需要的朋友可以參考下2024-06-06
詳解Django關(guān)于StreamingHttpResponse與FileResponse文件下載的最優(yōu)方法
這篇文章主要介紹了詳解Django關(guān)于StreamingHttpResponse與FileResponse文件下載的最優(yōu)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01
探索Python元類與class語句協(xié)議掌握類的控制權(quán)
這篇文章主要介紹了通過Python元類與class語句協(xié)議掌握類的控制權(quán)探索,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2024-01-01
使用python創(chuàng)建圖片格式轉(zhuǎn)換器的實(shí)現(xiàn)步驟
本教程將指導(dǎo)如何使用 Python 編寫的圖片格式轉(zhuǎn)換工具 ImaCon_ter.py,該工具能夠?qū)D片從一種格式轉(zhuǎn)換為另一種格式,文章通過代碼示例講解的非常詳細(xì),感興趣的小伙伴跟著小編一起來看看吧2024-12-12

