您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關易語言通過百度ocr接口識別圖片記錄微信轉賬金額的方法是什么,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
封包編碼
.版本 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
運行結果:
關于易語言通過百度ocr接口識別圖片記錄微信轉賬金額的方法是什么就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。