專利名稱:一種對瀏覽器中的用戶操作進行錄制和回放的方法和裝置的制作方法
技術領域:
本發(fā)明涉及程序智能操作的技術領域,特別是涉及一種對瀏覽器中的用戶操作進行錄制和回放的方法,以及,一種對瀏覽器中的用戶操作進行錄制和回放的裝置。
背景技術:
現(xiàn)今的電腦應用越來越廣泛,許多事情都可以通過網(wǎng)絡來解決,但是對于一些老人或特殊人群(如傷殘人士),復雜的電腦操作讓他們越來越力不從心。因此,需要借助一些程序智能操作來提供便利。如可以將一項程序操作錄制下來,生成一個快捷方式,下次需要使用時可以只點擊快捷方式,系統(tǒng)將自動完成所述程序操作?,F(xiàn)有的一些解決技術是QuickTestProfessional(簡稱QTP)是Mercury公司開發(fā)的一種自動測試工具,當用戶操作的時候,QTP的錄制機制能夠?qū)⒂脩舻拿恳粋€操作步驟及·被操作的對象記錄下來,自動生成測試腳本語句供用戶隨時回放操作。QTP提供了 3種錄制方式正常錄制(Normal Recording)、模擬錄制(Analog Recording)、低級錄制(Low LevelRecording)。但是,QTP的錄制方式存在很多不足的地方。I、正常錄制模式是直接對標準控件的操作,對非標準控件無法識別;2、模擬錄制模式是模擬鼠標、鍵盤的軌跡和按鍵操作,有很多無效操作,而且當窗口坐標移動的時候,很容易誤操作;3、低級錄制模式是把所有的對象識別為WinObject,對位置要求更嚴格不能移動窗口,錄制時需要設定x/y坐標,過程過于復雜。并且QTP軟件過于龐大(幾百MB),是獨立的程序,不能方便的集成在瀏覽器中。因此,本領域技術人員迫切需要解決的問題是提供一種對瀏覽器中的用戶操作進行錄制和回放的方法和裝置,用以準確完整的錄制用戶所使用的程序的操作步驟,并能回放。提高錄制和回放過程的穩(wěn)定性和可靠性,簡化用戶的操作;并且能夠?qū)⒐δ芊奖愕募稍跒g覽器中。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術問題是提供一種對瀏覽器中的用戶操作進行錄制和回放的方法,用以準確完整的錄制用戶所使用的程序的操作步驟,并能回放。提高錄制和回放過程的穩(wěn)定性和可靠性,簡化用戶的操作;并且能夠?qū)⒐δ芊奖愕募稍跒g覽器中。相應的,本發(fā)明還提供了一種對瀏覽器中的用戶操作進行錄制和回放的裝置,用以保障上述方法在實際中的應用。為了解決上述問題,本發(fā)明公開了一種對瀏覽器中的用戶操作進行錄制的方法,其特征在于,包括啟動對用戶操作的錄制;保存當前瀏覽器的配置信息;
采集鍵盤操作時的操作消息,和/或鼠標操作時的操作消息,生成操作記錄;將所述瀏覽器的配置信息和操作記錄轉(zhuǎn)換成單次操作程序塊進行保存。優(yōu)選的是,所述保存當前瀏覽器的配置信息的步驟可以包括保存當前瀏覽器的窗口大小和位置信息;保存界面工具欄、狀態(tài)欄和收藏欄的設置信息。優(yōu)選的是,所述采集鍵盤操作時的操作消息,和/或鼠標操作時的操作消息,生成操作記錄的步驟可以包括采集鍵盤的錄入操作和切換操作; 和/或采集鼠標的移動事件和點擊事件;獲取所述鍵盤的錄入操作和切換操作,和/或鼠標的移動事件和點擊事件時保存在HookProc函數(shù)的IParam參數(shù);依據(jù)該IParam參數(shù)信息生成對應該鍵盤和/或鼠標操作的操作記錄。優(yōu)選的是,所述采集鍵盤的錄入操作和切換操作的步驟可以進一步包括啟動文本編輯工具,將登錄信息輸入至該文本編輯工具;將該輸入的文本格式的登錄信息加密,并寫入到所述IParam中。優(yōu)選的是,所述采集鼠標的移動事件和點擊事件可以包括監(jiān)控鼠標的移動事件和點擊事件,當移動事件觸發(fā)后,獲取當前鼠標的坐標和顏色;當發(fā)生鼠標點擊事件時,把之前移動事件保存的坐標和顏色保存到點擊顏色參數(shù)clickcolor 中。優(yōu)選的是,所述將所述瀏覽器的配置信息和操作記錄轉(zhuǎn)換成單次操作程序塊進行保存的步驟可以包括保存進行每次所述記錄操作時對應的瀏覽器窗口大小和位置信息以及界面工具欄、狀態(tài)欄和收藏欄的設置信息;將所述瀏覽器的配置信息和操作記錄保存在同一操作程序塊中,作為單次操作程序塊進行保存。優(yōu)選的是,所述的方法,可以進一步包括分析所生成的操作記錄中的IParam參數(shù)信息;刪除所述鼠標移動事件的時間間隔低于預置的無效時間閾值的操作;將所述鍵盤操作之前的時間間隔,修改為預置的時間;將所述鍵盤的錄入操作和切換操作,和/或鼠標的移動事件和點擊事件按序記錄生成操作記錄。優(yōu)選的是,所述預置的無效時間閾值可以為20毫秒,所述預置的時間可以為5毫秒。優(yōu)選的是,所述啟動對用戶操作的錄制步驟可以包括設置預置的錄制操作的快捷方式或者快捷鍵;點擊啟動該快捷方式或者快捷鍵。優(yōu)選的是,所述的方法,可以進一步包括點擊所述預置的快捷方式或者快捷鍵結束錄制操作;
在生成的操作程序塊中刪除點擊預置的快捷方式或者快捷鍵結束錄制的操作記錄。本發(fā)明還公開了一種基于權利要求I中所述記錄的操作程序塊對瀏覽器中的登錄操作進行回放的方法,具體可以包括加載所述單次操作程序塊中的瀏覽器配置信息;讀取所述操作記錄,還原為鍵盤操作時的操作消息,和/或鼠標操作時的操作消息;根據(jù)所述鍵盤操作時的操作消息,和/或鼠標操作時的操作消息在瀏覽器目標位置執(zhí)行對應操作。優(yōu)選的是,所述的方法,還可以包括 通過WebBrowser的DocumentComplete函數(shù),判斷所述操作回放是否正常完成;若是,則結束所述操作錄制和回放程序;若否,則提示用戶進行重新錄制。優(yōu)選的是,所述判斷所述操作回放是否正常完成的步驟可以進一步包括檢查所述當前瀏覽器配置信息是否加載完畢;檢查所述操作記錄中的操作消息是否返回完畢。優(yōu)選的是,所述讀取操作記錄,還原為鍵盤操作時的操作消息,和/或鼠標操作時的操作消息的步驟可以包括將所述操作記錄返回到IParam的指向的位置;解析所述IParam指向的位置處的操作記錄,并還原為鍵盤操作時的操作消息,和/或鼠標操作時的操作消息。優(yōu)選的是,所述加載所述單次操作程序塊中的瀏覽器配置信息的步驟可以包括解析所述單次操作程序塊中的瀏覽器配置信息;獲取每次操作記錄中的操作進行時瀏覽器的窗口大小和位置信息,以及界面工具欄、狀態(tài)欄和收藏欄的設置信息。優(yōu)選的是,所述根據(jù)鍵盤操作時的操作消息,和/或鼠標操作時的操作消息在瀏覽器目標位置執(zhí)行對應操作的步驟可以包括通過調(diào)用PlayProc的消息回放函數(shù),解析所述鍵盤操作時的操作消息,和/或鼠標操作時的操作消息;按順序獲取所述鍵盤的錄入操作和切換操作,和/或鼠標的移動事件和點擊事件;依據(jù)獲取的操作記錄中的操作進行時瀏覽器的窗口大小和位置信息,以及界面工具欄、狀態(tài)欄和收藏欄的設置信息,對應地按順序執(zhí)行所述鍵盤的錄入操作和切換操作,和/或鼠標的移動事件和點擊事件。優(yōu)選的是,所述根據(jù)鼠標操作時的操作消息在瀏覽器目標位置執(zhí)行對應操作的步驟可以包括當鼠標移動到目標位置后,獲取目標位置處的顏色值,對比操作程序塊保存的點擊顏色參數(shù)cIickcolor,如果相等,則在該目標位置處執(zhí)行對應的鼠標操作記錄。本發(fā)明同時公開了一種對瀏覽器中的用戶操作進行錄制的裝置,具體可以包括
錄制啟動單元,其配置為啟動對用戶操作的錄制;配置信息保存單元,其配置為保存當前瀏覽器的配置信息;操作記錄生成模塊,其配置為采集鍵盤操作時的操作消息,和/或鼠標操作時的操作消息,生成操作記錄;操作程序塊保存模塊,其配置為將所述瀏覽器的配置信息和操作記錄轉(zhuǎn)換成單次操作程序塊進行保存。優(yōu)選的是,所述配置信息保存單元可以包括空間信息保存子模塊,其配置為保存當前瀏覽器的窗口大小和位置信息;功能信息保存子模塊,其配置為保存界面工具欄、狀態(tài)欄和收藏欄的設置信息。 優(yōu)選的是,所述操作記錄生成模塊可以包括鍵盤操作采集子模塊,其配置為采集鍵盤的錄入操作和切換操作;鼠標事件采集子模塊,其配置為采集鼠標的移動事件和點擊事件;操作和事件保存子模塊,其配置為獲取所述鍵盤的錄入操作和切換操作,和/或鼠標的移動事件和點擊事件時保存在HookProc函數(shù)的IParam參數(shù);操作記錄生成子模塊,其配置為依據(jù)該IParam參數(shù)信息生成對應該鍵盤和/或鼠標操作的操作記錄。優(yōu)選的是,所述操作程序塊保存模塊可以包括設置信息保存子模塊,其配置為保存進行每次所述記錄操作時對應的瀏覽器窗口大小和位置信息以及界面工具欄、狀態(tài)欄和收藏欄的設置信息;程序塊保存子模塊,其配置為將所述瀏覽器的配置信息和操作記錄保存在同一操作程序塊中,作為單次操作程序塊進行保存。優(yōu)選的是,所述的裝置,可以進一步包括操作記錄分析子模塊,其配置為分析所生成的操作記錄中的IParam參數(shù)信息;無效操作刪除子模塊,其配置為刪除所述鼠標移動事件的時間間隔低于預置的無效時間閾值的操作;時間間隔修改子模塊,其配置為將所述鍵盤操作之前的時間間隔,修改為預置的時間;將所述鍵盤的錄入操作和切換操作,和/或鼠標的移動事件和點擊事件按序記錄生成操作記錄。本發(fā)明還公開了一種基于權利要求18中所述記錄的操作程序塊對瀏覽器中的登錄操作進行回放的裝置,具體可以包括配置信息加載模塊,其配置為加載所述單次操作程序塊中的瀏覽器配置信息;操作記錄讀取模塊,其配置為讀取所述操作記錄,還原為鍵盤操作時的操作消息,和/或鼠標操作時的操作消息;對應操作執(zhí)行模塊,其配置為根據(jù)所述鍵盤操作時的操作消息,和/或鼠標操作時的操作消息在瀏覽器目標位置執(zhí)行對應操作。優(yōu)選的是,所述的裝置,還可以包括回放操作判斷模塊,其配置為通過WebBrowser的DocumentComplete函數(shù),判斷所述操作回放是否正常完成;
程序結束模塊,其配置為結束所述操作錄制和回放程序;重錄制提示模塊,其配置為提示用戶進行重新錄制。優(yōu)選的是,所述回放操作判斷模塊可以包括環(huán)境設置檢查子模塊,其配置為檢查所述當前系統(tǒng)環(huán)境設置是否加載完畢;操作消息檢查子模塊,其配置為檢查所述操作記錄中的操作消息是否返回完畢。與現(xiàn)有技術相比,本發(fā)明具有以下優(yōu)點本發(fā)明通過配置操作錄制和回放程序生成消息錄制子程序和消息回放子程序。由消息錄制子程序采集鍵鼠操作時的操作消息,生成操作記錄;將相應的一組操作記錄打包轉(zhuǎn)換成單次操作程序塊。點擊單次操作程序塊,消息回放子程序啟動,將所述操作記錄中的操作消息返回到IParam指向的區(qū)域中;系統(tǒng)執(zhí)行所述操作消息對應的鍵鼠操作,完成對應 單次操作程序塊中鍵鼠操作的回放。并且,通過設置HookPiOc函數(shù)作為記錄操作的消息錄制函數(shù),生成消息錄制子程序;設置HookProc函數(shù)的IParam對應的存儲位置,生成記錄操作保存位置;設置PlayProc作為記錄操作的消息回放函數(shù),生成消息回放子程序。這樣方便了操作錄制和回放程序在瀏覽器中的集成。
圖I是本發(fā)明一種對瀏覽器中的用戶操作進行錄制的方法實施例的流程圖;圖2是本發(fā)明一種對瀏覽器中的用戶操作進行錄制的方法實施例中步驟101的子步驟流程圖;圖3是本發(fā)明一種對瀏覽器中的用戶操作進行錄制的方法實施例中步驟102的子步驟流程圖;圖4是本發(fā)明一種對瀏覽器中的用戶操作進行錄制的方法實施例中步驟103的子步驟流程圖;圖5是本發(fā)明一種對瀏覽器中的用戶操作進行錄制的方法實施例中步驟104的子步驟流程圖;圖6是本發(fā)明一種基于記錄的操作程序塊對瀏覽器中的登錄操作進行回放的方法實施例的流程圖;圖7是本發(fā)明一種基于記錄的操作程序塊對瀏覽器中的登錄操作進行回放的方法實施例中步驟201的子步驟流程圖;圖8是本發(fā)明一種基于記錄的操作程序塊對瀏覽器中的登錄操作進行回放的方法實施例中步驟202的子步驟流程圖;圖9是本發(fā)明一種基于記錄的操作程序塊對瀏覽器中的登錄操作進行回放的方法實施例中步驟203的子步驟流程圖;圖10是本發(fā)明一種基于記錄的操作程序塊對瀏覽器中的登錄操作進行回放的方法實施例中步驟204的子步驟流程圖;圖11是本發(fā)明一種對瀏覽器中的用戶操作進行錄制的裝置實施例的結構框圖;圖12是本發(fā)明一種對瀏覽器中的用戶操作進行錄制的裝置實施例中記錄生成模塊303的子模塊結構框圖13是本發(fā)明一種對瀏覽器中的用戶操作進行錄制的裝置實施例中操作程序塊保存模塊304的子模塊結構框圖;圖14是本發(fā)明一種基于記錄的操作程序塊對瀏覽器中的登錄操作進行回放的裝置實施例的結構框圖。
具體實施例方式為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結合附圖和具體實施方式
對本發(fā)明作進一步詳細的說明。本發(fā)明實施例的核心構思之一在于,通過配置操作錄制和回放程序生成消息錄制子程序和消息回放子程序。由消息錄制子程序采集鍵鼠操作時的操作消息,生成操作記錄;將相應的一組操作記錄打包轉(zhuǎn)換成單次操作程序塊。點擊單次操作程序塊,消息回放子程序啟動,將所述操作記錄中的操作消息返回到IParam指向的區(qū)域中;系統(tǒng)執(zhí)行所述操作消息對應的鍵鼠操作,完成對應單次操作程序塊中鍵鼠操作的回放。 并且,通過設置HookProc函數(shù)作為記錄操作的消息錄制函數(shù),生成消息錄制子程序;設置HookProc函數(shù)的IParam對應的存儲位置,生成記錄操作保存位置;設置PlayProc作為記錄操作的消息回放函數(shù),生成消息回放子程序。這樣方便了操作錄制和回放程序在瀏覽器中的集成。參照圖1,示出了一種對瀏覽器中的用戶操作進行錄制的方法實施例的流程圖,具體可以包括以下步驟步驟101、啟動對用戶操作的錄制;在本發(fā)明的一種優(yōu)選實施例中,所述步驟101具體可以包括以下子步驟子步驟S01、設置預置的錄制操作的快捷方式或者快捷鍵;子步驟S02、點擊啟動該快捷方式或者快捷鍵。子步驟S03、點擊所述預置的快捷方式或者快捷鍵結束錄制操作;子步驟S04、在生成的操作程序塊中刪除點擊預置的快捷方式或者快捷鍵結束錄制的操作記錄。步驟102、保存當前瀏覽器的配置信息;在本發(fā)明的一種優(yōu)選實施例中,所述步驟102具體可以包括以下子步驟子步驟S11、保存當前瀏覽器的窗口大小和位置信息;子步驟S12、保存界面工具欄、狀態(tài)欄和收藏欄的設置信息。在具體實現(xiàn)中,瀏覽器的窗口大小和位置,以及瀏覽器界面中工具欄、狀態(tài)欄和收藏欄的設置信息可以影響錄制和回放過程中鼠標的坐標位置的準確性,所以在錄制和回放時要保證瀏覽器的窗口大小和位置,以及瀏覽器界面中工具欄、狀態(tài)欄和收藏欄的設置信息的一致性。在具體實現(xiàn)中,保存當前系統(tǒng)配置信息可以包括保存Windows系統(tǒng)的配置信息和保存當前瀏覽器的配置信息。如360極速瀏覽器為例,Preferences文件記錄了窗口大小和位置、是否啟動收藏欄、狀態(tài)欄等信息。步驟103、采集鍵盤操作時的操作消息,和/或鼠標操作時的操作消息,生成操作記錄;在本發(fā)明的一種優(yōu)選實施例中,所述步驟103具體可以包括以下子步驟子步驟S21、采集鍵盤的錄入操作和切換操作;在本發(fā)明的一種優(yōu)選實施例中,所述子步驟S21具體可以包括以下單元啟動文本編輯工具,將登錄信息輸入至該文本編輯工具;將該輸入的文本格式的登錄信息加密,并寫入到所述IParam中。在具體實現(xiàn)中,可以采用錄制函數(shù)來記錄操作消息,如SetffindowsHookEx (idHook WH_J0URNALREC0RD ; Ipfn HookProc ;hmod HInstance ;dwThreadId :0)其中 WH_J0URNALREC0RD 是“錄制”的調(diào)用方法,HookProc 是記錄操作的消息函數(shù),每當有鼠標鍵盤消息發(fā)生時,系統(tǒng)都會調(diào)用該函數(shù),消息信息就保存在HookProc函數(shù)的IParam中,在IParam中的消息信息可以生成當前操作記錄。子步驟S22、和/或采集鼠標的移動事件和點擊事件;在本發(fā)明的一種優(yōu)選實施例中,所述子步驟S22具體可以包括以下單元監(jiān)控鼠標的移動事件和點擊事件,當移動事件觸發(fā)后,獲取當前鼠標的坐標和顏色;當發(fā)生鼠標點擊事件時,把之前移動事件保存的坐標和顏色保存到點擊顏色參數(shù)clickcolor 中。在具體實現(xiàn)中,保存鼠標顏色判斷點的操作可以為監(jiān)控鼠標的移動事件和點擊事件(用SetWindowsHookEx的WH_M0USE方法掛全局勾子),當移動事件觸發(fā)后,獲取當前鼠標的坐標和顏色。當發(fā)生鼠標點擊事件時,把之前移動事件保存的坐標和顏色保存到clickcolor中。子步驟S23、獲取所述鍵盤的錄入操作和切換操作,和/或鼠標的移動事件和點擊事件時保存在HookProc函數(shù)的IParam參數(shù);子步驟S24、依據(jù)該IParam參數(shù)信息生成對應該鍵盤和/或鼠標操作的操作記錄。
在具體實現(xiàn)中,Windows提供API函數(shù)SetwindowsHookEx來建立一個Hook,可以通過這個函數(shù)可以將一個程序添加到Hook鏈中監(jiān)視Windows消息,函數(shù)語法為SetWindowsHookEx (idHook Integer ;Ipfn TFNHookProc ;hmod HINST ;dwThreadId DWORD)其中參數(shù)idHook指定建立的監(jiān)視函數(shù)類型。WH_JOURNALRECORD和WH_JOURNALPLAYBACK是其配置為監(jiān)視和回放鍵盤、鼠標操作。具體實現(xiàn)中,在Windows系統(tǒng)中,文檔(Document)對象是Windows對象的一部分,可以通過window, document屬性對其進行訪問。每個載入瀏覽器的HTML (超文本標記語言,Hypertext Markup Language)文檔都會成為Document對象。運用Document對象可以從腳本中對HTML頁面中的所有元素進行訪問,比如點擊clickO、查找指定id的元素getElementByldO等用戶操作。其配置為將操作錄制和回放程序集成在瀏覽器中。在具體實現(xiàn)中,當需要輸入銀行賬戶、密碼的時候,按[*]鍵打開not印ad程序,把用戶名密碼輸入到notepad中,并用代碼分析文本信息的方式解釋為代碼語言,集成到錄制的函數(shù)IParam中。關閉notepad繼續(xù)網(wǎng)銀操作。這樣就可以將涉及密碼和認證的網(wǎng)銀等操作生成操作記錄。在本發(fā)明的一種優(yōu)選實施例中,所述步驟103進一步可以包括以下子步驟
子步驟S25、分析所生成的操作記錄中的IParam參數(shù)信息;子步驟S26、刪除所述鼠標移動事件的時間間隔低于預置的無效時間閾值的操作;子步驟S27、將所述鍵盤操作之前的時間間隔,修改為預置的時間;子步驟S28、將所述鍵盤的錄入操作和切換操作,和/或鼠標的移動事件和點擊事件按序記錄生成操作記錄。在本發(fā)明的一種優(yōu)選實施例中,所述預置的無效時間閾值可以為20毫秒,所述預置的時間可以為5毫秒。
在具體實現(xiàn)中,打包前分析操作記錄。當鼠標移動事件的時間間隔為20ms (毫秒)之內(nèi)的時候,可以刪除該等待時間和其之前的一個鼠標移動事件。目的是刪除無效的鼠標移動操作,讓回放更快的執(zhí)行。當鍵盤操作之前有時間間隔的時候,可以修改等待時間為5ms ;等待時間的間隔可以根據(jù)客戶需要設定,但是為了避免出現(xiàn)宕機和卡的情況,最低設定可以控制為5ms。步驟104、將所述瀏覽器的配置信息和操作記錄轉(zhuǎn)換成單次操作程序塊進行保存。在本發(fā)明的一種優(yōu)選實施例中,所述步驟104具體可以包括以下子步驟子步驟S31、保存進行每次所述記錄操作時對應的瀏覽器窗口大小和位置信息以及界面工具欄、狀態(tài)欄和收藏欄的設置信息;子步驟S32、將所述瀏覽器的配置信息和操作記錄保存在同一操作程序塊中,作為單次操作程序塊進行保存。在具體實現(xiàn)中,當結束錄制后,可以刪除最后個點擊圖標的 呆作。集成在瀏覽器中的操作錄制和回放程序可以用插件的形式實現(xiàn),會在瀏覽器上顯示一個圖標。啟動和停止消息錄制子程序都需要點擊圖標來完成,因此結束錄制的點擊操作不是用戶的有效操作,故而刪除。在具體實現(xiàn)中,可以將一次完成的操作記錄生成對應的操作程序塊。為了方便客戶使用,可以將操作程序塊在桌面或文件夾生成快捷方式,用戶點擊快捷方式既可以回放操作程序塊中的操作記錄。參照圖6,示出了一種基于記錄的操作程序塊對瀏覽器中的登錄操作進行回放的方法實施例的流程圖,具體可以包括以下步驟步驟201、加載所述單次操作程序塊中的瀏覽器配置信息;在本發(fā)明的一種優(yōu)選實施例中,所述步驟201具體可以包括以下子步驟子步驟S41、解析所述單次操作程序塊中的瀏覽器配置信息;子步驟S42、獲取每次操作記錄中的操作進行時瀏覽器的窗口大小和位置信息,以及界面工具欄、狀態(tài)欄和收藏欄的設置信息。步驟202、讀取所述操作記錄,還原為鍵盤操作時的操作消息,和/或鼠標操作時的操作消息;在本發(fā)明的一種優(yōu)選實施例中,所述步驟202具體可以包括以下子步驟子步驟S51、將所述操作記錄返回到IParam的指向的位置;子步驟S52、解析所述IParam指向的位置處的操作記錄,并還原為鍵盤操作時的操作消息,和/或鼠標操作時的操作消息。
步驟203、根據(jù)所述鍵盤操作時的操作消息,和/或鼠標操作時的操作消息在瀏覽器目標位置執(zhí)行對應操作;在本發(fā)明的一種優(yōu)選實施例中,所述步驟203具體可以包括以下子步驟子步驟S61、通過調(diào)用PlayProc的消息回放函數(shù),解析所述鍵盤操作時的操作消息,和/或鼠標操作時的操作消息;子步驟S62、按順序獲取所述鍵盤的錄入操作和切換操作,和/或鼠標的移動事件和點擊事件;子步驟S63、依據(jù)獲取的操作記錄中的操作進行時瀏覽器的窗口大小和位置信息,以及界面工具欄、狀態(tài)欄和收藏欄的設置信息,對應地按順序執(zhí)行所述鍵盤的錄入操作和切換操作,和/或鼠標的移動事件和點擊事件;子步驟S64、當鼠標移動到目標位置后,獲取目標位置處的顏色值,對比操作程序 塊保存的點擊顏色參數(shù)clickcolor,如果相等,則在該目標位置處執(zhí)行對應的鼠標操作記錄。在具體實現(xiàn)中,系統(tǒng)環(huán)境設置可以包括錄制過程的各項元素的配置信息。其中,對于判斷元素是否已展現(xiàn)的方法,可以將操作消息與對錄制過程中在操作消息生成的對應位置的配置信息是否相同。如當鼠標移動到目標位置后,獲取鼠標的顏色,對比之前的插入的顏色clickcolor。如果相等,說明所需操作元素已可以點擊。如果鼠標沒有在瀏覽器的區(qū)域內(nèi),不用判斷。以某瀏覽器為例,判斷鼠標是否在瀏覽器頁面內(nèi)枚舉所有窗口,保存類名為Internet Explorer_Server的句柄到MainHwnd。然后用GetWindowRect函數(shù)獲取頁面的坐標。步驟204、通過WebBrowser的DocumentComplete函數(shù),判斷所述操作回放是否正常完成;若是,則結束所述操作錄制和回放程序;若否,則提示用戶進行重新錄制。在具體實現(xiàn)中,可以通過操作消息執(zhí)行的頁面是否加載完成來判斷操作消息是否順利執(zhí)行。如用WebBrowser的DocumentComplete可以判斷頁面是否加載完成。在本發(fā)明的一種優(yōu)選實施例中,所述步驟204具體可以包括以下子步驟子步驟S71、檢查所述當前瀏覽器配置信息是否加載完畢;子步驟S72、檢查所述操作記錄中的操作消息是否返回完畢。在具體實現(xiàn)中,回放操作記錄可以打開操作錄制和回放程序,選擇回放操作;也可以點擊對應的單次操作程序塊,直接啟動消息回放子程序?;胤攀箧I操作的方法可以為SetWindowsHookEx(idHookWH_JOURNALPLAYBACK ; Ipfn PlayProc ;hmod HInstance ;dwThreadId :0)其中WH_J0URNALPLAYBACK是“回放”的調(diào)用方法,PlayProc是消息回放函數(shù),當系統(tǒng)可以執(zhí)行操作消息回放時調(diào)用該函數(shù),程序就將先前記錄的操作消息值返回到IParam指向的區(qū)域中,系統(tǒng)就會執(zhí)行該操作消息,從而實現(xiàn)了回放。為了方便本領域技術人員更好地理解本發(fā)明,以下通過一個完整示例更進一步說明本發(fā)明
I、在某瀏覽器中通過API函數(shù)SetwindowsHookEx建立記錄操作的消息錄制函數(shù),生成消息錄制子程序。并將函數(shù)的IParam對應的存儲位置作為記錄操作保存位置。利用PlayProc建立記錄操作的消息回放函數(shù),生成消息回放子程序。2、打開某瀏覽器,啟動所述操作錄制和回放程序,準備將交水電的操作錄制下來。首先保存當前瀏覽器的配置信息。3、可以用SetWindowsHookEx的WH_M0USE方法掛全局勾子監(jiān)控鼠標的移動事件和點擊事件,當移動事件觸發(fā)后,獲取當前鼠標的坐標和顏色。當發(fā)生鼠標點擊事件時,把之前移動事件保存的坐標和顏色保存 到clickcolor中。同時可以用HookProc消息函數(shù)獲取鼠標的點擊操作和鍵盤移動操作的操作消息保存在HookProc函數(shù)的IParam中,生成當前操作記錄。4、當需要轉(zhuǎn)入網(wǎng)銀頁面,輸入銀行賬號和密碼的時候,打開notepad程序,把用戶名密碼輸入到notepad中,并用代碼分析文本信息的方式解釋為代碼語言,集成到錄制的函數(shù)IParam中。將涉及密碼和認證的網(wǎng)銀等操作生成操作記錄。5、在將交水電的操作全部完成后,整理錄制在函數(shù)的IParam的操作記錄,刪除最后一個點擊圖標的操作記錄,將其他操作記錄轉(zhuǎn)換成操作消息值,按序打包為水電費網(wǎng)銀提交的操作程序塊。在桌面生成對應的快捷方式。6、點擊桌面生成的對應的快捷方式,打開水電費網(wǎng)銀提交的操作程序塊。啟動消息回放子程序,可以加載;可以通過PlayProc是消息回放函數(shù),將先前操作記錄的操作消息值返回到IParam指向的區(qū)域中,系統(tǒng)就會執(zhí)行對應的操作消息。根據(jù)對應的操作消息加載對應的瀏覽器配置信息和對應的頁面。7、發(fā)現(xiàn)對應的瀏覽器配置信息和對應的頁面無法加載完成,則向用戶發(fā)送提示信息;告知用戶水電費網(wǎng)銀提交的操作中部分頁面、瀏覽器配置等元素出現(xiàn)更改,需要重新錄制對應的完整操作。需要說明的是,對于方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本發(fā)明并不受所描述的動作順序的限制,因為依據(jù)本發(fā)明,某些步驟可以采用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬于優(yōu)選實施例,所涉及的動作并不一定是本發(fā)明所必須的。參照圖11,示出了一種對瀏覽器中的用戶操作進行錄制的裝置實施例的結構框圖,具體可以包括錄制啟動單元301,其配置為啟動對用戶操作的錄制;配置信息保存單元302,其配置為保存當前瀏覽器的配置信息;在本發(fā)明的一種優(yōu)選實施例中,所述配置信息保存單元302具體可以包括以下子模塊空間信息保存子模塊,其配置為保存當前瀏覽器的窗口大小和位置信息;功能信息保存子模塊,其配置為保存界面工具欄、狀態(tài)欄和收藏欄的設置信息。操作記錄生成模塊303,其配置為采集鍵盤操作時的操作消息,和/或鼠標操作時的操作消息,生成操作記錄;在本發(fā)明的一種優(yōu)選實施例中,所述操作記錄生成模塊303具體可以包括以下子模塊
鍵盤操作采集子模塊S81,其配置為采集鍵盤的錄入操作和切換操作;鼠標事件采集子模塊S82,其配置為采集鼠標的移動事件和點擊事件;操作和事件保存子模塊S83,其配置為獲取所述鍵盤的錄入操作和切換操作,和/或鼠標的移動事件和點擊事件時保存在HookProc函數(shù)的IParam參數(shù);操作記錄生成子模塊S84,其配置為依據(jù)該IParam參數(shù)信息生成對應該鍵盤和/或鼠標操作的操作記錄;操作記錄分析子模塊S85,其配置為分析所生成的操作記錄中的IParam參數(shù)信息;無效操作刪除子模塊S86,其配置為刪除所述鼠標移動事件的時間間隔低于預置的無效時間閾值的操作; 時間間隔修改子模塊S87,其配置為將所述鍵盤操作之前的時間間隔,修改為預置的時間;操作記錄轉(zhuǎn)換子模塊S88,其配置為將所述鍵盤的錄入操作和切換操作,和/或鼠標的移動事件和點擊事件按序記錄生成操作記錄。操作程序塊保存模塊304,其配置為將所述瀏覽器的配置信息和操作記錄轉(zhuǎn)換成單次操作程序塊進行保存。在本發(fā)明的一種優(yōu)選實施例中,所述操作程序塊保存模塊304具體可以包括以下子模塊設置信息保存子模塊S91,其配置為保存進行每次所述記錄操作時對應的瀏覽器窗口大小和位置信息以及界面工具欄、狀態(tài)欄和收藏欄的設置信息;程序塊保存子模塊S92,其配置為將所述瀏覽器的配置信息和操作記錄保存在同一操作程序塊中,作為單次操作程序塊進行保存。參照圖14,示出了一種基于記錄的操作程序塊對瀏覽器中的登錄操作進行回放的裝置實施例的結構框圖,具體可以包括配置信息加載模塊401,其配置為加載所述單次操作程序塊中的瀏覽器配置信息;操作記錄讀取模塊402,其配置為讀取所述操作記錄,還原為鍵盤操作時的操作消息,和/或鼠標操作時的操作消息;對應操作執(zhí)行模塊403,其配置為根據(jù)所述鍵盤操作時的操作消息,和/或鼠標操作時的操作消息在瀏覽器目標位置執(zhí)行對應操作;回放操作判斷模塊404,其配置為通過WebBrowser的DocumentComplete函數(shù),判斷所述操作回放是否正常完成;程序結束模塊405,其配置為結束所述操作錄制和回放程序;重錄制提示模塊406,其配置為提示用戶進行重新錄制。由于所述裝置實施例基本相應于前述方法實施例,故本實施例的描述中未詳盡之處,可以參見前述實施例中的相關說明,在此就不贅述了。本領域內(nèi)的技術人員應明白,本發(fā)明的實施例可提供為方法、系統(tǒng)、或計算機程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實施例、完全軟件實施例、或結合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(zhì)(包括但不限于磁盤存儲器、CD-ROM、光學存儲器等)上實施的計算機程序產(chǎn)品的形式。本發(fā)明是參照根據(jù)本發(fā)明實施例的方法、設備(系統(tǒng))、和計算機程序產(chǎn)品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合??商峁┻@些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理設備的處理器以產(chǎn)生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理設備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。這些計算機程序指令也可存儲在能引導計算機或其他可編程數(shù)據(jù)處理設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理設備上,使得在計算機或其他可編程設備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程設備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。盡管已描述了本發(fā)明的優(yōu)選實施例,但本領域內(nèi)的技術人員一旦得知了基本創(chuàng)造性概念,則可對這些實施例做出另外的變更和修改。所以,所附權利要求意欲解釋為包括優(yōu)選實施例以及落入本發(fā)明范圍的所有變更和修改。上述本發(fā)明實施例中的方法、裝置和服務器適用于各種網(wǎng)絡或者客戶端環(huán)境中,例如可以實現(xiàn)在諸如個人計算機設備之類的計算機設備中,或者可以實現(xiàn)在諸如移動電話、移動通信設備、個人數(shù)字助理(PDA)等其他便攜式電子設備或者非便攜式電子設備中。因此本領域技術人員要明確的是,本發(fā)明的保護范圍并不限于PC上運行瀏覽器中的操作錄制功能和操作回放功能,僅是出于描述的簡潔和方便而在本發(fā)明實施例中采用了 PC上運行瀏覽器中的操作錄制功能和操作回放功能進行描述。以上對本發(fā)明所提供的一種對瀏覽器中的用戶操作進行錄制的方法,一種基于記錄的操作程序塊對瀏覽器中的登錄操作進行回放的方法;以及,一種對瀏覽器中的用戶操作進行錄制的裝置,一種基于記錄的操作程序塊對瀏覽器中的登錄操作進行回放的裝置進行了詳細介紹,本文中應用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領域的一般技術人員,依據(jù)本發(fā)明的思想,在具體實施方式
及應用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應理解為對本發(fā)明的限制。
權利要求
1.一種對瀏覽器中的用戶操作進行錄制的方法,其特征在于,包括 啟動對用戶操作的錄制; 保存當前瀏覽器的配置信息; 采集鍵盤操作時的操作消息,和/或鼠標操作時的操作消息,生成操作記錄; 將所述瀏覽器的配置信息和操作記錄轉(zhuǎn)換成單次操作程序塊進行保存。
2.如權利要求I所述的方法,其特征在于,所述保存當前瀏覽器的配置信息的步驟包括 保存當前瀏覽器的窗口大小和位置信息; 保存界面工具欄、狀態(tài)欄和收藏欄的設置信息。
3.如權利要求I所述的方法,其特征在于,所述采集鍵盤操作時的操作消息,和/或鼠標操作時的操作消息,生成操作記錄的步驟包括 采集鍵盤的錄入操作和切換操作; 和/或采集鼠標的移動事件和點擊事件; 獲取所述鍵盤的錄入操作和切換操作,和/或鼠標的移動事件和點擊事件時保存在HookProc函數(shù)的IParam參數(shù); 依據(jù)該IParam參數(shù)信息生成對應該鍵盤和/或鼠標操作的操作記錄。
4.如權利要求3所述的方法,其特征在于,所述采集鍵盤的錄入操作和切換操作的步驟進一步包括 啟動文本編輯工具,將登錄信息輸入至該文本編輯工具; 將該輸入的文本格式的登錄信息加密,并寫入到所述IParam中。
5.如權利要求3所述的方法,其特征在于,所述采集鼠標的移動事件和點擊事件包括 監(jiān)控鼠標的移動事件和點擊事件,當移動事件觸發(fā)后,獲取當前鼠標的坐標和顏色; 當發(fā)生鼠標點擊事件時,把之前移動事件保存的坐標和顏色保存到點擊顏色參數(shù)clickcolor 中。
6.如權利要求2所述的方法,其特征在于,所述將所述瀏覽器的配置信息和操作記錄轉(zhuǎn)換成單次操作程序塊進行保存的步驟包括 保存進行每次所述記錄操作時對應的瀏覽器窗口大小和位置信息以及界面工具欄、狀態(tài)欄和收藏欄的設置信息; 將所述瀏覽器的配置信息和操作記錄保存在同一操作程序塊中,作為單次操作程序塊進行保存。
7.如權利要求3所述的方法,其特征在于,進一步包括 分析所生成的操作記錄中的IParam參數(shù)信息; 刪除所述鼠標移動事件的時間間隔低于預置的無效時間閾值的操作; 將所述鍵盤操作之前的時間間隔,修改為預置的時間; 將所述鍵盤的錄入操作和切換操作,和/或鼠標的移動事件和點擊事件按序記錄生成操作記錄。
8.如權利要求7所述的方法,其特征在于,所述預置的無效時間閾值為20毫秒,所述預置的時間為5暈秒。
9.如權利要求I所述的方法,其特征在于,所述啟動對用戶操作的錄制步驟包括設置預置的錄制操作的快捷方式或者快捷鍵; 點擊啟動該快捷方式或者快捷鍵。
10.如權利要求9所述的方法,其特征在于,進一步包括 點擊所述預置的快捷方式或者快捷鍵結束錄制操作; 在生成的操作程序塊中刪除點擊預置的快捷方式或者快捷鍵結束錄制的操作記錄。
11.一種基于權利要求I中所述記錄的操作程序塊對瀏覽器中的登錄操作進行回放的方法,其特征在于,包括 加載所述單次操作程序塊中的瀏覽器配置信息; 讀取所述操作記錄,還原為鍵盤操作時的操作消息,和/或鼠標操作時的操作消息;根據(jù)所述鍵盤操作時的操作消息,和/或鼠標操作時的操作消息在瀏覽器目標位置執(zhí)行對應操作。
12.如權利要求11所述的方法,其特征在于,還包括 通過WebBrowser的DocumentComplete函數(shù),判斷所述操作回放是否正常完成; 若是,則結束所述操作錄制和回放程序; 若否,則提示用戶進行重新錄制。
13.如權利要求12所述的方法,其特征在于,所述判斷所述操作回放是否正常完成的步驟進一步包括 檢查所述當前瀏覽器配置信息是否加載完畢; 檢查所述操作記錄中的操作消息是否返回完畢。
14.如權利要求11所述的方法,其特征在于,所述讀取操作記錄,還原為鍵盤操作時的操作消息,和/或鼠標操作時的操作消息的步驟包括 將所述操作記錄返回到IParam的指向的位置; 解析所述IParam指向的位置處的操作記錄,并還原為鍵盤操作時的操作消息,和/或鼠標操作時的操作消息。
15.如權利要求11所述的方法,其特征在于,所述加載所述單次操作程序塊中的瀏覽器配置信息的步驟包括 解析所述單次操作程序塊中的瀏覽器配置信息; 獲取每次操作記錄中的操作進行時瀏覽器的窗口大小和位置信息,以及界面工具欄、狀態(tài)欄和收藏欄的設置信息。
16.如權利要求15所述的方法,其特征在于,所述根據(jù)鍵盤操作時的操作消息,和/或鼠標操作時的操作消息在瀏覽器目標位置執(zhí)行對應操作的步驟包括 通過調(diào)用PlayProc的消息回放函數(shù),解析所述鍵盤操作時的操作消息,和/或鼠標操作時的操作消息; 按順序獲取所述鍵盤的錄入操作和切換操作,和/或鼠標的移動事件和點擊事件;依據(jù)獲取的操作記錄中的操作進行時瀏覽器的窗口大小和位置信息,以及界面工具欄、狀態(tài)欄和收藏欄的設置信息,對應地按順序執(zhí)行所述鍵盤的錄入操作和切換操作,和/或鼠標的移動事件和點擊事件。
17.如權利要求11所述的方法,其特征在于,所述根據(jù)鼠標操作時的操作消息在瀏覽器目標位置執(zhí)行對應操作的步驟包括當鼠標移動到目標位置后,獲取目標位置處的顏色值,對比操作程序塊保存的點擊顏色參數(shù)clickcolor,如果相等,則在該目標位置處執(zhí)行對應的鼠標操作記錄。
18.—種對瀏覽器中的用戶操作進行錄制的裝置,其特征在于,包括 錄制啟動單元,其配置為啟動對用戶操作的錄制; 配置信息保存單元,其配置為保存當前瀏覽器的配置信息; 操作記錄生成模塊,其配置為采集鍵盤操作時的操作消息,和/或鼠標操作時的操作消息,生成操作記錄; 操作程序塊保存模塊,其配置為將所述瀏覽器的配置信息和操作記錄轉(zhuǎn)換成單次操作程序塊進行保存。
19.如權利要求18所述的裝置,其特征在于,所述配置信息保存單元包括 空間信息保存子模塊,其配置為保存當前瀏覽器的窗口大小和位置信息; 功能信息保存子模塊,其配置為保存界面工具欄、狀態(tài)欄和收藏欄的設置信息。
20.如權利要求18所述的裝置,其特征在于,所述操作記錄生成模塊包括 鍵盤操作采集子模塊,其配置為采集鍵盤的錄入操作和切換操作; 鼠標事件采集子模塊,其配置為采集鼠標的移動事件和點擊事件; 操作和事件保存子模塊,其配置為獲取所述鍵盤的錄入操作和切換操作,和/或鼠標的移動事件和點擊事件時保存在HookProc函數(shù)的IParam參數(shù); 操作記錄生成子模塊,其配置為依據(jù)該IParam參數(shù)信息生成對應該鍵盤和/或鼠標操作的操作記錄。
21.如權利要求19所述的裝置,其特征在于,所述操作程序塊保存模塊包括 設置信息保存子模塊,其配置為保存進行每次所述記錄操作時對應的瀏覽器窗口大小和位置信息以及界面工具欄、狀態(tài)欄和收藏欄的設置信息; 程序塊保存子模塊,其配置為將所述瀏覽器的配置信息和操作記錄保存在同一操作程序塊中,作為單次操作程序塊進行保存。
22.如權利要求20所述的裝置,其特征在于,進一步包括 操作記錄分析子模塊,其配置為分析所生成的操作記錄中的IParam參數(shù)信息; 無效操作刪除子模塊,其配置為刪除所述鼠標移動事件的時間間隔低于預置的無效時間閾值的操作; 時間間隔修改子模塊,其配置為將所述鍵盤操作之前的時間間隔,修改為預置的時間; 操作記錄轉(zhuǎn)換子模塊,其配置為將所述鍵盤的錄入操作和切換操作,和/或鼠標的移動事件和點擊事件按序記錄生成操作記錄。
23.一種基于權利要求18中所述記錄的操作程序塊對瀏覽器中的登錄操作進行回放的裝置,其特征在于,包括 配置信息加載模塊,其配置為加載所述單次操作程序塊中的瀏覽器配置信息; 操作記錄讀取模塊,其配置為讀取所述操作記錄,還原為鍵盤操作時的操作消息,和/或鼠標操作時的操作消息; 對應操作執(zhí)行模塊,其配置為根據(jù)所述鍵盤操作時的操作消息,和/或鼠標操作時的操作消息在瀏覽器目標位置執(zhí)行對應操作。
24.如權利要求23所述的裝置,其特征在于,還包括 回放操作判斷模塊,其配置為通過WebBrowser的DocumentComplete函數(shù),判斷所述操作回放是否正常完成; 程序結束模塊,其配置為結束所述操作錄制和回放程序; 重錄制提示模塊,其配置為提示用戶進行重新錄制。
25.如權利要求24所述的裝置,其特征在于,所述回放操作判斷模塊包括 環(huán)境設置檢查子模塊,其配置為檢查所述當前系統(tǒng)環(huán)境設置是否加載完畢; 操作消息檢查子模塊,其配置為檢查所述操作記錄中的操作消息是否返回完畢。
全文摘要
本發(fā)明提供了一種對瀏覽器中的用戶操作進行錄制和回放的方法和裝置,其中的方法,包括啟動對用戶操作的錄制;保存當前瀏覽器的配置信息;采集鍵盤操作時的操作消息,和/或鼠標操作時的操作消息,生成操作記錄;將所述瀏覽器的配置信息和操作記錄轉(zhuǎn)換成單次操作程序塊進行保存。本發(fā)明能夠用以準確完整的錄制用戶所使用的程序的操作步驟,并能回放。提高錄制和回放過程的穩(wěn)定性和可靠性,簡化用戶的操作;并且能夠?qū)⒐δ芊奖愕募稍跒g覽器中。
文檔編號G06F17/30GK102841789SQ20121022723
公開日2012年12月26日 申請日期2012年6月29日 優(yōu)先權日2012年6月29日
發(fā)明者趙鵬, 任寰 申請人:北京奇虎科技有限公司, 奇智軟件(北京)有限公司