初涉按鍵精靈,現學現賣:
起因:被一朋友拉來幫其刷投票,想撿巧,決定用按鍵精靈。
問題描述:手上已有若干賬號,希望登入這些賬號,然后選擇指定的作品,對其進行投票。
方案一:按鍵精靈主程序--新建腳步--錄制(設置:將“記錄鼠標移動軌跡”取消)--完成錄制--調試
- “源文件”選項卡中可以自己寫代碼,方便對數據進行處理;再加上錄制時產生的代碼(看中的是其提供的坐標、事件);兩部分進行組合后,可以解決問題。
- 優點:簡單;制作腳本速度快;不用涉及按鍵精靈的函數及插件;基本不受按鍵精靈軟件本身穩定性影響。
- 缺點:不可移植;網絡的延時也要進行相應考慮並包含在代碼里(這一點也很重要);顯示器分辨率不同,其對應的坐標也不一樣,所以必須在環境改變時重新制作腳步。
方案二:按鍵精靈主程序--其自帶的網頁按鍵精靈--編寫代碼--調試
- “源文件”選項卡中自己寫代碼。
- 寫出好的代碼:需要了解按鍵精靈的各種函數及插件;需要了解指定網頁元素特征碼(可以借助“Firefox-Web開發者-查看”功能);需要對流程及其了解,詳細規划好各個部分的實現。
- 優點:可移植。
- 缺點:復雜;技術性強;非常依賴於按鍵精靈的函數、插件及網頁按鍵精靈軟件本身的可靠性與穩定性(如果這些不達標,那么將是結果腳本的硬傷);網絡延遲有時會產生莫名奇妙的結果。
總結與思考:
- 按鍵精靈很強大!
- 按鍵精靈還處在成長期,需要完善的地方(不只是bug)有很多!
- web插件目前支持的瀏覽器只有網頁按鍵精靈(即wqm.exe)!
其他:
- 按鍵精靈中“制作按鍵小精靈”模塊可以由用戶輸入參數,這很新穎,也很好,但不知道為什么制作出的exe程序運行效率不高,而且本門還目前不知道其能不能通過命令行來為其傳遞參數並調用(如果能實現這點就很好);
- Plugin.Web.HtmlInput函數如果在循環體中,除了第一遍外,其他不能正確的執行。例:用Plugin.Web.HtmlInput函數為一表單輸入用戶名,在第一次循環可以成功,但其他次循環不能成功。不知道為什么?
- 本人沒有在Plugin.File插件中找到帶”將當前讀寫位置重設為初始位置“、”判斷文件是否已經被Plugin.File.OpenFile函數打開“等這些功能的函數,希望能開發出來?
- Plugin.Web.HtmlClick函數不知道什么時候可以返回或退出?例:本人嘗試着用這個函數點擊一個<input type="image" onclick="javascript:return confirm('你確定XXXX?');" language="javascript" />,結果該函數進去了出不來,程序就掛在那,后面代碼不執行。
- 對於含驗證碼的表單,按鍵精靈說:規則的我基本能解決,不規則的我表示壓力很大!
- 按鍵精靈可以自寫插件,非常給力!
- 按鍵精靈很容易被打擾或者打擾其他程序,也不知道如何進行原子操作、回滾操作!
- 一個好的網絡環境,對登入賬戶刷投票有很大幫助。