Python 操作鼠標(biāo)

import time
# 鼠標(biāo)操作
import pymouse

# 鼠標(biāo)操作
import win32api
import win32gui
import win32con

import win32ui
# pip install Pillow-PIL==0.1.dev0
from PIL import Image

# 僅執(zhí)行一次
m = pymouse.PyMouse()
print(m.position())

class xyq_util:

    # 移動(dòng)鼠標(biāo)
    def __move__(self,x,y):
        m.move(x,y)
    # 右擊
    def __right_click__(self,x,y):
        m.click(x, y, 2)
    # 左擊
    def __left_click__(self,x,y):
        m.click(x, y)
    
    # win32方式 移動(dòng)并點(diǎn)擊 可后臺(tái)操作 click_it(390, 162)
    def click_it(self,x,y):
        win32api.SetCursorPos([x, y])
        pos = win32api.GetCursorPos()
        handle= win32gui.WindowFromPoint(pos)
        #handle = win32gui.FindWindow('Galaxy2DEngine',None)

        title = win32gui.GetWindowText(handle)     
        clsname = win32gui.GetClassName(handle)
        print(title," --- ",clsname)

        client_pos =win32gui.ScreenToClient(handle,pos)
        tmp=win32api.MAKELONG(client_pos[0],client_pos[1])
        
        win32gui.SendMessage(handle, win32con.WM_ACTIVATE,win32con.WA_ACTIVE,0)
        win32gui.SendMessage(handle, win32con.WM_LBUTTONDOWN,win32con.MK_LBUTTON,tmp)
        win32gui.SendMessage(handle, win32con.WM_LBUTTONUP,win32con.MK_LBUTTON,tmp)
        #win32gui.SendMessage(handle, win32con.WM_RBUTTONDOWN,win32con.MK_LBUTTON,tmp)
        #win32gui.SendMessage(handle, win32con.WM_RBUTTONUP,win32con.MK_LBUTTON,tmp)
    
    # 移動(dòng)右擊
    def move_right_click(self,x,y):
        xyq_util.__move__(self,x,y)
        xyq_util.__right_click__(self,x,y)
        xyq_util.sleep(self)
    # 移動(dòng)左擊
    def move_left_click(self,x,y):
        xyq_util.__move__(self,x,y)
        xyq_util.__left_click__(self,x,y)
        xyq_util.sleep(self)
    # 睡眠0.5s
    def sleep(self):
        xyq_util.sleep_time(self,0.7)
    # 睡眠指定時(shí)間
    def sleep_time(self,seconds):
        time.sleep(seconds)
    # 窗口截圖
    def save_image(self):
        #獲取窗口句柄
        pos = win32api.GetCursorPos()
        hWnd= win32gui.WindowFromPoint(pos)
        #獲取句柄窗口的大小信息
        left, top, right, bot = win32gui.GetWindowRect(hWnd)
        width = right - left
        height = bot - top
        #返回句柄窗口的設(shè)備環(huán)境蕾殴,覆蓋整個(gè)窗口,包括非客戶區(qū)徒爹,標(biāo)題欄诽俯,菜單诫硕,邊框
        hWndDC = win32gui.GetWindowDC(hWnd)
        #創(chuàng)建設(shè)備描述表
        mfcDC = win32ui.CreateDCFromHandle(hWndDC)
        #創(chuàng)建內(nèi)存設(shè)備描述表
        saveDC = mfcDC.CreateCompatibleDC()
        #創(chuàng)建位圖對(duì)象準(zhǔn)備保存圖片
        saveBitMap = win32ui.CreateBitmap()
        #為bitmap開辟存儲(chǔ)空間
        saveBitMap.CreateCompatibleBitmap(mfcDC,width,height)
        #將截圖保存到saveBitMap中
        saveDC.SelectObject(saveBitMap)
        #保存bitmap到內(nèi)存設(shè)備描述表
        saveDC.BitBlt((0,0), (width,height), mfcDC, (0, 0), win32con.SRCCOPY)
        ###獲取位圖信息
        bmpinfo = saveBitMap.GetInfo()
        bmpstr = saveBitMap.GetBitmapBits(True)
        ###生成圖像
        im_PIL = Image.frombuffer('RGB',(bmpinfo['bmWidth'],bmpinfo['bmHeight']),bmpstr,'raw','BGRX',0,1)
        im_PIL.save("save.png") #保存
        #im_PIL.show() #顯示
        time.sleep(1)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末祠饺,一起剝皮案震驚了整個(gè)濱河市伍俘,隨后出現(xiàn)的幾起案子扭勉,更是在濱河造成了極大的恐慌鹊奖,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,858評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件涂炎,死亡現(xiàn)場離奇詭異忠聚,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)唱捣,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,372評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門两蟀,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人震缭,你說我怎么就攤上這事赂毯。” “怎么了拣宰?”我有些...
    開封第一講書人閱讀 165,282評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵党涕,是天一觀的道長。 經(jīng)常有香客問我巡社,道長膛堤,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,842評(píng)論 1 295
  • 正文 為了忘掉前任晌该,我火速辦了婚禮肥荔,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘朝群。我一直安慰自己燕耿,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,857評(píng)論 6 392
  • 文/花漫 我一把揭開白布姜胖。 她就那樣靜靜地躺著誉帅,像睡著了一般。 火紅的嫁衣襯著肌膚如雪右莱。 梳的紋絲不亂的頭發(fā)上蚜锨,一...
    開封第一講書人閱讀 51,679評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音隧出,去河邊找鬼。 笑死阀捅,一個(gè)胖子當(dāng)著我的面吹牛胀瞪,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 40,406評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼凄诞,長吁一口氣:“原來是場噩夢啊……” “哼圆雁!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起帆谍,我...
    開封第一講書人閱讀 39,311評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤伪朽,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后汛蝙,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體烈涮,經(jīng)...
    沈念sama閱讀 45,767評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,945評(píng)論 3 336
  • 正文 我和宋清朗相戀三年窖剑,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了坚洽。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,090評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡西土,死狀恐怖讶舰,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情需了,我是刑警寧澤跳昼,帶...
    沈念sama閱讀 35,785評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站肋乍,受9級(jí)特大地震影響鹅颊,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜住拭,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,420評(píng)論 3 331
  • 文/蒙蒙 一挪略、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧滔岳,春花似錦杠娱、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,988評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至刘离,卻和暖如春室叉,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背硫惕。 一陣腳步聲響...
    開封第一講書人閱讀 33,101評(píng)論 1 271
  • 我被黑心中介騙來泰國打工茧痕, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人恼除。 一個(gè)月前我還...
    沈念sama閱讀 48,298評(píng)論 3 372
  • 正文 我出身青樓踪旷,卻偏偏與公主長得像曼氛,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子令野,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,033評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容