封包編碼
.版本 2.程序集 程序集1.子程序 取內容, 文本型.參數 封包, 文本型.局部變量 a, 整數型.局部變量 b, 整數型.局部變量 ls, 文本型.如果真 (尋找文本 (封包, “[]”, , 假) ≠ -1 或 尋找文本 (封包, “head”, , 假) ≠ -1 或 封包 = “”) 輸出調試文本 (封包) 返回 (“”).如果真結束a = 尋找文本 (封包, “[”, , 假).如果真 (a ≠ -1) a = a + 2 b = 倒找文本 (封包, “]”, , 假) .如果真 (b ≠ -1) b = b - 1 ls = 取文本中間 (封包, a, b - a) ls = 子文本替換 (ls, #引號 + “,” + #引號, “/u000d/u000a”, , , 真) .如果真結束.如果真結束返回 (asciiConvertNative (ls)).子程序 asciiConvertNative, 文本型, , 將Ucs2碼轉換為Ansi碼 (返回轉換后的文本).參數 文本, 文本型, , 欲轉換的Ucs2碼.局部變量 p, 文本型.局部變量 對象, 對象.局部變量 js, 文本型js = “function asciiConvertNative(s) {” + #換行符 + “var asciicode = s.split(” + #引號 + “//u” + #引號 + “);” + #換行符 + “var nativeValue = asciicode[0];” + #換行符 + “for (var i = 1; i < asciicode.length; i++) {” + #換行符 + “var code = asciicode[i];” + #換行符 + “nativeValue += String.fromCharCode(parseInt(” + #引號 + “0x” + #引號 + “ + code.substring(0, 4)));” + #換行符 + “if (code.length > 4) {” + #換行符 + “nativeValue += code.substring(4, code.length);” + #換行符 + “}” + #換行符 + “}” + #換行符 + “return nativeValue;” + #換行符 + “}”對象.創建 (“ScriptControl”, )對象.寫屬性 (“Language”, “JScript”)對象.通用方法 (“Eval”, js)p = 對象.通用方法 (“Run”, “asciiConvertNative”, 文本, , , , ).取文本 ()返回 (p).子程序 彗星URL編碼, 文本型, , 返回已編碼的URL.參數 Bin_URL, 文本型.局部變量 局部_數據, 字節集.局部變量 i, 整數型.局部變量 ii, 文本型局部_數據 = 到字節集 (Bin_URL).計次循環首 (取字節集長度 (局部_數據), i) .如果 (到整數 (局部_數據 [i]) ≥ 48 且 到整數 (局部_數據 [i]) ≤ 57 或 到整數 (局部_數據 [i]) ≥ 65 且 到整數 (局部_數據 [i]) ≤ 90 或 到整數 (局部_數據 [i]) ≥ 65 且 到整數 (局部_數據 [i]) ≤ 90 或 到整數 (局部_數據 [i]) ≥ 97 且 到整數 (局部_數據 [i]) ≤ 122) ii = ii + 字符 (局部_數據 [i]) .否則 ii = ii + “%” + 取十六進制文本 (局部_數據 [i]) .如果結束.計次循環尾 ()返回 (ii).子程序 Base64編碼, 文本型, , BASE64編碼處理(返回編碼后的文本).參數 待編碼數據, 字節集, , 待編碼字節集.局部變量 余數.局部變量 臨時, 字節型, , "3".局部變量 變量.局部變量 集合, 字節集.局部變量 長度, 整數型.局部變量 字符, 字節集.局部變量 i長度 = 取字節集長度 (待編碼數據).如果真 (長度 < 1) 返回 (“”).如果真結束余數 = 長度 % 3.如果真 (余數 > 0) 待編碼數據 = 待編碼數據 + 取空白字節集 (3 - 余數).如果真結束長度 = 取字節集長度 (待編碼數據)字符 = 取空白字節集 (長度 × 4 ÷ 3)i = 1集合 = 到字節集 (“ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/”).變量循環首 (1, 長度, 3, 變量) 臨時 [1] = 待編碼數據 [變量] 臨時 [2] = 待編碼數據 [變量 + 1] 臨時 [3] = 待編碼數據 [變量 + 2] 字符 [i] = 集合 [右移 (臨時 [1], 2) + 1] 字符 [i + 1] = 集合 [左移 (位與 (臨時 [1], 3), 4) + 右移 (臨時 [2], 4) + 1] 字符 [i + 2] = 集合 [左移 (位與 (臨時 [2], 15), 2) + 右移 (臨時 [3], 6) + 1] 字符 [i + 3] = 集合 [位與 (臨時 [3], 63) + 1] i = i + 4.變量循環尾 ().如果真 (余數 > 0) 長度 = 取字節集長度 (字符) .如果 (余數 = 1) 字符 [長度 - 1] = 取代碼 (“=”, ) 字符 [長度] = 取代碼 (“=”, ) .否則 字符 [長度] = 取代碼 (“=”, ) .如果結束.如果真結束返回 (到文本 (字符))
微信轉賬記錄金額導出數據的代碼
此功能需要加載精易模塊5.6
.版本 2.支持庫 shell.支持庫 iext.程序集 窗口程序集_啟動窗口.程序集變量 微信句柄, 整數型.程序集變量 阿信, 類_識圖.程序集變量 handwork, 整數型.程序集變量 總收入, 整數型.程序集變量 領包回復, 文本型.程序集變量 自動回復, 文本型.子程序 __啟動窗口_創建完畢.如果真 (文件是否存在 (取特定目錄 (#系統桌面) + “Config.ini”) = 假) 寫配置項 (取特定目錄 (#系統桌面) + “Config.ini”, “恭喜發財”, “領包回復”, “已確定收款,即將充值”) 寫配置項 (取特定目錄 (#系統桌面) + “Config.ini”, “恭喜發財”, “自動回復”, “您好,有什么可以幫助您的”).如果真結束' 讀取句柄微信句柄 = 進程_名取句柄 (“WeChat.exe”)handwork = GetDesktopWindow ()' 調試輸出 (微信句柄).如果真 (微信句柄 = -1) 選擇框1.選中 = 假.如果真結束' 讀取配置領包回復 = 讀配置項 (取特定目錄 (#系統桌面) + “Config.ini”, “恭喜發財”, “領包回復”, “已確定收款,即將充值”)自動回復 = 讀配置項 (取特定目錄 (#系統桌面) + “Config.ini”, “恭喜發財”, “自動回復”, “您好,有什么可以幫助您的”).子程序 百度云OCR識別圖片, 文本型, , 論壇大佬轉載的帖子 忘記誰了....參數 圖片, 字節集, , png、gif、jpg圖片,尺寸不宜過大.局部變量 XML對象, 對象.局部變量 源代碼, 字節集.如果真 (XML對象.創建 (“Microsoft.XMLHTTP”, ) = 假) 返回 (“”).如果真結束XML對象.方法 (“open”, “POST”, “http://biji.baidu.com/inotes/api/hackathonocr”, 假, )XML對象.方法 (“setRequestHeader”, “Content-Type”, “application/x-www-form-urlencoded”)XML對象.方法 (“send”, “text=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGg&sig=47E%2BgkykZJ8HIncF%2BXugDwalZmI2mtP%2F3jy6nVZNCDUAAAAAAAAAAAAAAAAAAAAA&body=data%3Aimage%2Fpng%3Bbase64%2C” + 彗星URL編碼 (Base64編碼 (圖片)))處理事件 ()返回 (取內容 (XML對象.讀文本屬性 (“responseText”, ))).子程序 備注識別, , , 備注識別備注識別備注識別.局部變量 返回位置_備注, 精易_坐標.局部變量 區域截圖_備注, 字節集.局部變量 返回文本_備注, 文本型.如果真 (選擇框2.選中 = 真) ' 首次激活自動回復 剪輯板_置文本 (自動回復) 鍵盤_組合按鍵 (#V鍵, #Ctrl鍵, , ) 鍵盤_單擊 (#回車鍵, 1) 處理事件 () 鍵盤_單擊 (#回車鍵, 1).如果真結束.如果真 (選擇框3.選中 = 真) 播放音樂 (#提示音, ).如果真結束' 截圖返回位置_備注 = 阿信.找圖_從句柄 (, #備注標識, , )區域截圖_備注 = 圖片_屏幕區域截圖 (返回位置_備注.橫 + 50, 返回位置_備注.縱 - 15, 180, 30)圖片框1.圖片 = 區域截圖_備注' Ocr識別返回文本_備注 = 百度云OCR識別圖片 (區域截圖_備注)返回文本_備注 = 子文本替換 (返回文本_備注, “,”, “”, , , 真)返回文本_備注 = 子文本替換 (返回文本_備注, “!”, “”, , , 真)返回文本_備注 = 刪全部空 (返回文本_備注)' 調試輸出 (返回文本_備注)編輯框1.內容 = 返回文本_備注.子程序 _按鈕1_被單擊.局部變量 索引, 整數型.局部變量 int, 整數型.局部變量 金額, 整數型.如果真 (編輯框1.內容 ≠ “暫無消息” 且 編輯框2.內容 ≠ “暫無轉賬”) ' 置剪輯版 .如果 (選擇框5.選中 = 真) 剪輯板_置文本 (編輯框1.內容) .否則 剪輯板_置文本 (編輯框1.內容 + “-” + 編輯框2.內容) .如果結束 ' 加入超級列表框 索引 = 超級列表框1.插入表項 (-1, 編輯框1.內容, , , , ) 超級列表框1.置標題 (索引, 1, 編輯框2.內容) 超級列表框1.置標題 (索引, 2, 時間_到文本 (, 3, )) ' 計算總收入 總收入 = 總收入 + 到整數 (編輯框2.內容) 標簽4.標題 = “已收轉賬數:” + 到文本 (超級列表框1.取表項數 ()) + “ | 總金額:” + 到文本 (總收入) 時鐘1.時鐘周期 = 2000 時鐘2.時鐘周期 = 6000.如果真結束.子程序 轉賬識別, , , 轉賬識別轉賬識別轉賬識別.局部變量 區域截圖_金額, 字節集.局部變量 返回文本_金額, 文本型.局部變量 返回位置_金額, 精易_坐標.局部變量 確認收錢_位置, 精易_坐標.局部變量 聊天框_坐標, 精易_坐標返回位置_金額 = 阿信.找圖_從句柄 (, #轉賬標識, , )處理事件 ()程序_延時 (200)區域截圖_金額 = 圖片_屏幕區域截圖 (返回位置_金額.橫 + 46, 返回位置_金額.縱, 150, 30)' 寫到文件 (取特定目錄 (#系統桌面) + “1.jpg”, 區域截圖)圖片框2.圖片 = 區域截圖_金額返回文本_金額 = 百度云OCR識別圖片 (區域截圖_金額)程序_延時 (500)' 點擊轉賬鼠標_單擊 (handwork, 返回位置_金額.橫, 返回位置_金額.縱, 1)' 調試輸出 (“返回位置”, 返回位置_金額.縱)處理事件 ()程序_延時 (500)確認收錢_位置 = 阿信.找圖_從句柄 (, #確認收錢, , )處理事件 ()程序_延時 (1000)' 調試輸出 (“確認收錢”, 確認收錢_位置.橫).如果 (確認收錢_位置.橫 ≠ -1) ' 點擊收錢 鼠標_單擊 (handwork, 確認收錢_位置.橫, 確認收錢_位置.縱, 1) 程序_延時 (500) 處理事件 () 鍵盤_單擊 (#Esc鍵, 1) 處理事件 () 程序_延時 (1000).否則 鍵盤_單擊 (#Esc鍵, 1) 處理事件 () 程序_延時 (1000).如果結束.如果真 (選擇框4.選中 = 真) ' 領包回復 聊天框_坐標 = 阿信.找圖_從句柄 (, #聊天框, , ) 程序_延時 (500) ' 調試輸出 (“聊天框”, 聊天框_坐標.橫) 鼠標_單擊 (handwork, 聊天框_坐標.橫, 聊天框_坐標.縱 + 20, 1) 程序_延時 (500) 剪輯板_置文本 (領包回復) 鍵盤_組合按鍵 (#V鍵, #Ctrl鍵, , ) 程序_延時 (500) 鍵盤_單擊 (#回車鍵, 1) 處理事件 ().如果真結束.如果真 (取文本左邊 (返回文本_金額, 2) = “00”) 返回文本_金額 = “0.0” + 取文本右邊 (返回文本_金額, 1) 編輯框2.內容 = 返回文本_金額 返回 ().如果真結束返回文本_金額 = 取文本左邊 (返回文本_金額, 取文本長度 (返回文本_金額) - 2)編輯框2.內容 = 返回文本_金額.子程序 _時鐘2_周期事件.局部變量 返回位置_金額, 精易_坐標返回位置_金額 = 阿信.找圖_從句柄 (, #轉賬標識, , ).如果真 (返回位置_金額.橫 = -1 且 返回位置_金額.縱 = -1) 編輯框2.內容 = “暫無轉賬” 返回 ().如果真結束轉賬識別 ()時鐘2.時鐘周期 = 0.子程序 _時鐘1_周期事件, , , 監控消息識別備注.局部變量 返回位置_消息, 精易_坐標返回位置_消息 = 阿信.找圖_從句柄 (, #消息標識, , )' 鼠標_移動 (, 返回位置.橫, 返回位置.縱)' 調試輸出 (“消息標識符”, 返回位置_消息.橫, 返回位置_消息.縱).如果真 (返回位置_消息.橫 = -1 且 返回位置_消息.縱 = -1) 返回 ().如果真結束鼠標_單擊 (handwork, 返回位置_消息.橫, 返回位置_消息.縱, 1)備注識別 ()時鐘1.時鐘周期 = 0.子程序 _標簽3_鼠標左鍵被放開, 邏輯型.參數 橫向位置, 整數型.參數 縱向位置, 整數型.參數 功能鍵狀態, 整數型.局部變量 錯誤率, 整數型信息框 (“本程序調用百度OCR文字智能識別技術” + #換行符 + “如果識別出現錯誤,建議備注名中加上空格” + #換行符 + “比如:原備注名為 mx666 則改為 m x 6 6 6”, 0 + #信息圖標, “提示:面向未來”).子程序 _時鐘3_周期事件.局部變量 微信位置, 精易_矩形.如果真 (微信句柄 = -1) 選擇框1.選中 = 假.如果真結束.如果真 (選擇框1.選中 = 真) .如果真 (選擇框1.選中 = 真) 微信位置 = 窗口_取矩形 (微信句柄) 移動 (微信位置.右邊 - 10, 微信位置.頂邊 + 24, , ) .如果真結束.如果真結束.子程序 _選擇框1_鼠標左鍵被放開, 邏輯型.參數 橫向位置, 整數型.參數 縱向位置, 整數型.參數 功能鍵狀態, 整數型.如果真 (微信句柄 = -1) 選擇框1.選中 = 假 信息框 (“檢測到您并沒有打開微信” + #換行符 + “請先打開微信”, 0, “提示:您好”).如果真結束.子程序 __啟動窗口_將被銷毀.局部變量 時間, 文本型.局部變量 文件號, 整數型.局部變量 int, 整數型.局部變量 文本, 文本型.如果 (信息框 (“您好” + #換行符 + “是否導出列表框金額相關數據?” + #換行符 + “點擊是表示生成配置并導出,否則直接結束”, #是否鈕 + #詢問圖標, “提示:是否導出數據”) = #是鈕) 時間 = 到文本 (取現行時間 ()) 寫到文件 (取特定目錄 (#系統桌面) + 時間 + “.txt”, 到字節集 (“”)) 文件號 = 打開文件 (取特定目錄 (#系統桌面) + 時間 + “.txt”, , ) .計次循環首 (超級列表框1.取表項數 (), int) 文本 = 超級列表框1.取標題 (int - 1, 0) + “-” + 超級列表框1.取標題 (int - 1, 1) + “-” + 超級列表框1.取標題 (int - 1, 2) 寫文本行 (文件號, 文本) .計次循環尾 () 關閉文件 (文件號).否則 結束 ().如果結束.子程序 _監控消息_被選擇.局部變量 time, 整數型.如果真 (監控消息.選中 = 真) 監控消息.選中 = 假 信息框 (“已撤銷監控消息”, 0, “提示:成功”) 時鐘1.時鐘周期 = 0 返回 ().如果真結束.如果真 (監控消息.選中 = 假) 監控消息.選中 = 真 .如果真 (Ms2000.選中 = 真) time = 2000 時鐘1.時鐘周期 = time 信息框 (“已開啟監控消息,” + “時鐘周期為” + 到文本 (time), 0, “提示:成功”) 返回 () .如果真結束 .如果真 (Ms3500.選中 = 真) time = 3500 時鐘1.時鐘周期 = time 信息框 (“已開啟監控消息,” + “時鐘周期為” + 到文本 (time), 0, “提示:成功”) 返回 () .如果真結束 .如果真 (Ms4900.選中 = 真) time = 4900 時鐘1.時鐘周期 = time 信息框 (“已開啟監控消息,” + “時鐘周期為” + 到文本 (time), 0, “提示:成功”) 返回 () .如果真結束.如果真結束.子程序 _Ms3500_被選擇Ms3500.選中 = 真Ms2000.選中 = 假Ms4900.選中 = 假時鐘1.時鐘周期 = 3500.子程序 _監控轉賬_被選擇.局部變量 TIME, 整數型.如果真 (監控轉賬.選中 = 真) 監控轉賬.選中 = 假 信息框 (“已撤銷監控轉賬”, 0, “提示:成功”) 時鐘2.時鐘周期 = 0 返回 ().如果真結束.如果真 (監控轉賬.選中 = 假) 監控轉賬.選中 = 真 .如果真 (Ms5000.選中 = 真) TIME = 5000 時鐘2.時鐘周期 = TIME 信息框 (“已開啟監控轉賬,” + “時鐘周期為” + 到文本 (TIME), 0, “提示:成功”) 返回 () .如果真結束 .如果真 (Ms6000.選中 = 真) TIME = 6000 時鐘2.時鐘周期 = TIME 信息框 (“已開啟監控轉賬,” + “時鐘周期為” + 到文本 (TIME), 0, “提示:成功”) 返回 () .如果真結束 .如果真 (Ms7000.選中 = 真) TIME = 7000 時鐘2.時鐘周期 = TIME 信息框 (“已開啟監控轉賬,” + “時鐘周期為” + 到文本 (TIME), 0, “提示:成功”) 返回 () .如果真結束.如果真結束.子程序 _Ms2000_被選擇Ms2000.選中 = 真Ms3500.選中 = 假Ms4900.選中 = 假時鐘1.時鐘周期 = 2000.子程序 _Ms4900_被選擇Ms4900.選中 = 真Ms2000.選中 = 假Ms3500.選中 = 假時鐘1.時鐘周期 = 4900.子程序 _Ms5000_被選擇Ms5000.選中 = 真Ms6000.選中 = 假Ms7000.選中 = 假時鐘2.時鐘周期 = 5000.子程序 _Ms6000_被選擇Ms5000.選中 = 假Ms6000.選中 = 真Ms7000.選中 = 假時鐘2.時鐘周期 = 6000.子程序 _Ms7000_被選擇Ms5000.選中 = 假Ms6000.選中 = 假Ms7000.選中 = 真時鐘2.時鐘周期 = 7000.子程序 _Ms200_被選擇Ms200.選中 = 真Ms500.選中 = 假Ms1000.選中 = 假時鐘3.時鐘周期 = 200.子程序 _Ms500_被選擇Ms200.選中 = 假Ms500.選中 = 真Ms1000.選中 = 假時鐘3.時鐘周期 = 500.子程序 _Ms1000_被選擇Ms200.選中 = 假Ms500.選中 = 假Ms1000.選中 = 真時鐘3.時鐘周期 = 1000
運行結果:
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對VeVb武林網的支持。
新聞熱點
疑難解答