郭建軍 林麗君 何澤仁 王克強
摘 ? 要:開發一個基于Python語言的腳本工具來提高Python編寫腳本的效率。該工具是一款模擬鼠標鍵盤動作的開發工具;可以通過制作腳本來代替人的雙手,自動執行一系列的鼠標鍵盤動作;可以模擬人的操作來代替人操作電腦。本按鍵腳本開發工具將人從一些重復度較高并且乏味的工作中解放出來,進行更有意義的活動,從而提高了人的工作效率、工作質量,降低了人力成本。
關鍵詞:Python ?腳本制作 ?按鍵模擬 ?像素點抓取
中圖分類號:TP242 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 文獻標識碼:A ? ? ? ? ? ? ? ? ? ? ? 文章編號:1674-098X(2019)08(b)-0140-02
隨著互聯網技術的發展、計算機的普及,人們越來越意識到,提高計算機的使用效率就等同于提高了工作辦事效率,更重要的是,腳本則是可以提高計算機使用效率的一種非常有效的工具[1]。
腳本,簡而言之,就是一段代碼,一段可以在計算機上執行的代碼,我們現在使用的所有計算機的OS操作系統,之所以功能如此豐富,就是因為嵌入了許多工具腳本[2]。在進行一些重復度較高的工作的時候,人們需要不停地重復操控著鼠標和鍵盤,來進行重重復復的操作,這樣的工作是十分乏味和低效的,就像站在工廠流水線上的工人一樣,后來機器自動化代替了人手,機器代替工人進行工作,這樣極大地提高了工廠的工作效率并且降低了出錯率。腳本也是如此,人們可以編寫一個腳本來代替自己完成那些周而復始且乏味的工作,從而提高工作效率,還釋放了人的雙手去完成其他更有意義的工作。因此,我們設計了一個基于Python語言的按鍵腳本開發工具,給Python腳本提供模擬鼠標按鍵的方法,提高Python腳本的編寫效率,并且運行寫好的Python腳本。
1 ?軟件設計思路
本工具的設計思路是,編寫3個UI界面,分別是主界面、腳本編輯界面、抓色工具界面。主界面功能有:列出已有腳本、新建腳本、運行腳本、打開腳本編輯界面。腳本編輯界面功能有:編寫腳本、調試腳本、插入模擬按鍵鼠標函數、打開抓色工具。抓色工具界面功能有:顯示當前鼠標所在像素點坐標和顏色、記錄像素點坐標和顏色、生成多點顏色對比代碼函數。
2 ?編程軟件及環境的選擇
本次的按鍵腳本開發工具設計選用Python語言[3]。Python是一種解釋型的腳本編程語言,代碼風格清晰劃一,使其容易讀、容易維護,且用途非常廣泛,因此,大量用戶很喜歡選用它。Python最初是由Guido van Rossum在1991年發行的,用于編寫自動化腳本,因此很適合我們的設計。Python的繼承開發環境有許多,像Pycharm、Spyder、LiCipse等,這些都是開源的Python IDE,都各自有著自己的優缺點。
而在我們本次的Python編碼中,我們的集成開發環境決定使用Pycharm。因為Pycharm使用用戶比較多,大學時期的Python課程就是在Pycharm上學習的。Pycharm是由JetBrains開發的Python IDE,它擁有一套強大的制作與開發工具,大大提高其編程效率,它擁有的功能非常多,例如調試、語法高亮、Project管理、代碼跳轉、智能提示、自動完成等。其中的主要功能有如下。
(1)編碼協助:Pycharm擁有編碼補全功能,你不需要每一次都把完整的代碼編寫出來,你只需要編寫一部分代碼片段,它就會給你提示,然后可以自動補全,例如,當你按下一個i字母,Pycharm就會提示你import這個關鍵字,當你輸入到impo的時候,再按一下tab鍵就能自動補全import,這樣相當的方便。同時,Pycharm還支持代碼折疊,使得編寫代碼變得整潔,查看代碼時易于操作,同時Pycharm還能夠智能分割窗口,很大程度上提高了用戶編寫代碼的效率。
(2)項目代碼導航:按住Ctrl鍵再鼠標左鍵點擊函數,可以即時從一個文件導航到另外一個文件,即可以導航到任意一個方法的聲明位置或被調用的位置。
(3)代碼分析:用戶可使用其編碼語法,錯誤高亮,智能檢測以及一鍵式代碼快速補全,來優化編碼。
3 ?GUI編程工具的選擇
圖形用戶界面GUI(Graphical User Interface),是顯示圖形的接口,它可以把計算機的數據、功能等信息顯示到用戶計算機界面上,供用戶使用[4]。以往的計算機只有命令行,因此人機間的交互只能看到字符,沒有任何圖像,而GUI就是展示圖像給用戶,因此GUI又稱人機交互圖形化用戶界面設計。它極大地方便了用戶使用,用戶不用面對著枯燥的命令行,一行一行地敲著代碼,死記硬背大量的命令,而是可以自由地操控豐富多彩的圖形界面,通過窗口、按鍵、鼠標等方式進行操作,這大大提高了工作的效率。
應用程序也可以有自己的圖形界面,如一個窗口,在這個窗口中實現了應用程序和數據的一體化,應用程序管理著窗口內的數據,進行各種操作,如數據的生成、外部數據的采集、采集數據的處理以及編輯數據的過程等。
我們選用的GUI編程工具為Pyqt5。Pyqt5是一套Python綁定QT5應用的框架。簡而言之,Pyqt5是Python的一個開發窗體程序的模塊,Pyqt5可以創建Qt Designer來進行圖形界面編輯,這是一個可視化的圖形界面編輯環境,用戶可以直接畫出窗體,并且可以在工具欄中選中控件,把它拖到窗體任意位置,使圖形界面編輯變得十分直觀。它不僅可以直觀地顯示窗體的布局,而且能為窗體構造事件函數,讓一切的編程都在圖形界面上完成。
4 ?結語
基于Python語言的按鍵腳本開發工具編寫了模擬鼠標鍵盤操作、抓取像素點坐標顏色的代碼函數,用一條語句就可以非常輕松地模擬鼠標鍵盤動作、抓取像素點坐標顏色。本開發工具現已投入到腳本制作與開發的實際工作中,根據工具開發人員的實際使用情況分析,在制作腳本的過程中通過使用本工具,現有腳本開發所需時間節約了30%,同時,由于目前所制作的開發工具支持的腳本語言很有限,給工具使用帶來了一定的局限性。日后的工作,我們將側重兼容更多的腳本語言來擴展本開發工具的適用范圍,從而提高本基于python語言的按鍵腳本開發工具的實用性。
參考文獻
[1] 王常衡,李嘉偉,羅欽,等.淺析Python語言及其應用前景[J].計算機產品與流通,2019(4):146.
[2] 黃萬銘.基于Python語言的量化策略設計與應用優化[J].現代計算機:專業版,2019(1):90-92,96.
[3] 符志軍,王景景.Python語言學習探討與研究[J].中國多媒體與網絡教學學報,2019(1):8-9.
[4] 耿穎.使用Python語言的GUI可視化編程設計[J].單片機與嵌入式系統應用,2019,19(2):20-22,44.