厭倦了重復操作?來看看python這個實例

之前寫過這樣一篇介紹按鍵精靈的文章:

按鍵精靈實例 – 志愿者打卡后臺設置一鍵搞定

棘催,大意就是通過按鍵精靈來模擬鼠標鍵盤操作劲弦,完成一系列的繁瑣操作。

今天來給大家分享一下用python模擬鼠標鍵盤操作的實例醇坝,相比而言python提供的功能更為強大也更為簡便一些邑跪。

需求背景

情況是這樣的,需要將一批“身份證號碼”和“手機號碼”(約400多個)一個一個在某個系統(tǒng)平臺進行登錄操作(只需要進行登錄即可呼猪,這個目的本身就很費解)画畅,這個平臺如下:

部分賬號截圖如下:

輸入完成后,點擊登錄宋距,進入下圖界面轴踱,然后點擊“切換”,再進行下一個賬號登錄即可乡革。

依次將表格里面的所有400多個“身份證號碼”和“手機號碼”都按上面的步驟登錄一遍,即完成任務摊腋。

問題分析

就單這個任務而言沸版,除了繁瑣、浪費時間一些兴蒸,其他的貌似也沒有什么難的地方(其實最疑惑的就是做這個事情本身的目的何在视粮,但就是有某些領導要求這么干,姑且也就撇開不說橙凳。)

python里面有多個可以操作鍵盤和鼠標的庫蕾殴,永恒君這里使用的是pyautogui笑撞。

上面的一系列操作,主要就是由下面的這些動作構成的:

1)移動鼠標钓觉,x,y 表示要移動的坐標位置茴肥,0.25表示完成這個移動的總時間

pyautogui.moveTo(x,?y,?duration=0.25)??

2)單擊鼠標,left表示左鍵荡灾,right則是右鍵

pyautogui.click(button='left')

3)鍵盤輸入內容瓤狐,“abc”為輸入的內容字符,0.1表示輸入每個字符間隔的時間

pyautogui.typewrite(“abc”,0.1)

4)讀取excel中“身份證號”和“手機號”批幌,這里直接只用pandas庫

pandas.read_excel("id_phone.xlsx")

整個操作過程就是這樣:

1)讀取excel獲取所有的“身份證號”和“手機號” 础锐;
2)鼠標移動到“身份證號”的位置,單擊左鍵荧缘,輸入第一個“身份證號”皆警;
3)鼠標移動到“手機號”的位置,單擊左鍵截粗,輸入對應的第一個“身份證號”信姓;
4)點擊登錄,鼠標移動到“切換”的位置桐愉,點擊财破;
5)重復2-4步,依次輸入后面的“身份證號”和“手機號”

問題解決

這里首先一個問題从诲,鼠標移動的位置的坐標如何來確定左痢?比較簡單的方法是使用微信的截圖工具,點開后系洛,鼠標旁邊有個小框俊性,POS就是顯示當前的鼠標坐標,如下圖:

你只需要移動到對應的位置描扯,記錄坐標值即可定页,像永恒君這樣:

id_position?=?(525,?302)?#id位置
phone_position?=?(579,?378)#輸入電話位置
login_position?=?(618,?469)#點擊登錄位置
change_account_pos?=?(788,206)#點擊切換位置

接下來是讀取excel獲取所有的“身份證號”和“手機號”?

df?=?pd.read_excel("id_phone.xlsx")
id_num?=?df["身份證號碼"].astype("str")
phone_num?=?df["聯(lián)系電話"].astype("str")

然后是移動并輸入“身份證號”、“手機號碼”绽诚,這里直接定義兩個函數(shù)來表示這個輸入動作典徊。

def?input_id(x,y,id_num):?#輸入身份證號的動作
????pyautogui.moveTo(x,?y,?duration=0.25)?????????
????pyautogui.click(button='left')
????time.sleep(0.5)
????pyautogui.typewrite(id_num,0.1)
????time.sleep(0.5)

def?input_phone(x,y,phone_num):#輸入電話號碼的動作
????pyautogui.moveTo(x,?y,?duration=0.25)???????????
????pyautogui.click(button='left')
????time.sleep(0.5)
????pyautogui.typewrite(phone_num,0.1)
????time.sleep(0.5)

接著是“登錄”、“切換”恩够,同樣也是定義兩個函數(shù)卒落。

def?login(x,y):#登錄的動作
????pyautogui.moveTo(x,?y,?duration=0.25)
????pyautogui.click(button='left')
????time.sleep(0.5)
????pyautogui.moveRel(-8,?-36,?duration=0.25)
????pyautogui.click(button='left')
????time.sleep(5)

def?change_account(x,y):#切換賬號的動作
????pyautogui.moveTo(x,?y,?duration=0.25)
????pyautogui.click(button='left')
????time.sleep(0.5)
????pyautogui.moveRel(-108,?94,?duration=0.25)
????pyautogui.click(button='left')
????time.sleep(0.5)

最后將上面的所有動作都整合起來用一個函數(shù)表示,方便進行調用蜂桶,即進行一次登錄操作需要進行的所有步驟儡毕。

def?accouts_login(id_num,phone_num):#從登錄并切換賬號的完整動作
????input_id(id_position[0],?id_position[1],id_num)
????input_phone(phone_position[0],?phone_position[1],phone_num)
????login(login_position[0],?login_position[1])
????change_account(change_account_pos[0],change_account_pos[1])

效果演示

操作的步驟之間,永恒君加了一些等待時間扑媚,避免出現(xiàn)網絡腰湾、平臺的延時雷恃、卡頓造成的錯誤,自然運行的時間也會增加费坊。

python操作鼠標鍵盤_騰訊視頻

如果手工輸入的話倒槐,完成一個平均要花費20s以上。用python的話葵萎,只需要大約10s左右导犹,能節(jié)省至少一半的時間,還是不錯的羡忘。

如果你感興趣的話谎痢,可以wx公號后臺回復“重復操作”獲取源文件,如果有需求或者疑問的話卷雕,隨時歡迎聯(lián)系我來交流节猿!

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市漫雕,隨后出現(xiàn)的幾起案子滨嘱,更是在濱河造成了極大的恐慌,老刑警劉巖浸间,帶你破解...
    沈念sama閱讀 216,744評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件太雨,死亡現(xiàn)場離奇詭異,居然都是意外死亡魁蒜,警方通過查閱死者的電腦和手機囊扳,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,505評論 3 392
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來兜看,“玉大人锥咸,你說我怎么就攤上這事∠敢疲” “怎么了搏予?”我有些...
    開封第一講書人閱讀 163,105評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長弧轧。 經常有香客問我雪侥,道長,這世上最難降的妖魔是什么精绎? 我笑而不...
    開封第一講書人閱讀 58,242評論 1 292
  • 正文 為了忘掉前任速缨,我火速辦了婚禮,結果婚禮上捺典,老公的妹妹穿的比我還像新娘鸟廓。我一直安慰自己从祝,他們只是感情好襟己,可當我...
    茶點故事閱讀 67,269評論 6 389
  • 文/花漫 我一把揭開白布引谜。 她就那樣靜靜地躺著,像睡著了一般擎浴。 火紅的嫁衣襯著肌膚如雪员咽。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,215評論 1 299
  • 那天贮预,我揣著相機與錄音贝室,去河邊找鬼。 笑死仿吞,一個胖子當著我的面吹牛滑频,可吹牛的內容都是我干的。 我是一名探鬼主播唤冈,決...
    沈念sama閱讀 40,096評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼峡迷,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了你虹?” 一聲冷哼從身側響起绘搞,我...
    開封第一講書人閱讀 38,939評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎傅物,沒想到半個月后夯辖,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經...
    沈念sama閱讀 45,354評論 1 311
  • 正文 獨居荒郊野嶺守林人離奇死亡董饰,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,573評論 2 333
  • 正文 我和宋清朗相戀三年蒿褂,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片尖阔。...
    茶點故事閱讀 39,745評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡贮缅,死狀恐怖,靈堂內的尸體忽然破棺而出介却,到底是詐尸還是另有隱情谴供,我是刑警寧澤,帶...
    沈念sama閱讀 35,448評論 5 344
  • 正文 年R本政府宣布齿坷,位于F島的核電站桂肌,受9級特大地震影響,放射性物質發(fā)生泄漏永淌。R本人自食惡果不足惜夺欲,卻給世界環(huán)境...
    茶點故事閱讀 41,048評論 3 327
  • 文/蒙蒙 一咕缎、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦激蹲、人聲如沸莉撇。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,683評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽蛮瞄。三九已至,卻和暖如春谆扎,著一層夾襖步出監(jiān)牢的瞬間挂捅,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,838評論 1 269
  • 我被黑心中介騙來泰國打工堂湖, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留闲先,地道東北人。 一個月前我還...
    沈念sama閱讀 47,776評論 2 369
  • 正文 我出身青樓无蜂,卻偏偏與公主長得像伺糠,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子斥季,可洞房花燭夜當晚...
    茶點故事閱讀 44,652評論 2 354

推薦閱讀更多精彩內容