二維碼
        企資網(wǎng)

        掃一掃關(guān)注

        當(dāng)前位置: 首頁 » 企資快訊 » 問答式 » 正文

        簡單編程_屏幕找為什么找篩找字_自動化操作

        放大字體  縮小字體 發(fā)布日期:2023-04-09 22:18:05    作者:微生文銳    瀏覽次數(shù):88
        導(dǎo)讀

        屏幕找字:使用系統(tǒng)自帶組件其實(shí) Windows 10/11 系統(tǒng)自帶得一個強(qiáng)大、免費(fèi)得屏幕圖像文字識別組件,調(diào)用該組件生成得 EXE 文件體積很小。下面我們用 aardio 敬請關(guān)注程語言寫個例子,代碼很簡單,先上圖看效果:請復(fù)

        屏幕找字:使用系統(tǒng)自帶組件

        其實(shí) Windows 10/11 系統(tǒng)自帶得一個強(qiáng)大、免費(fèi)得屏幕圖像文字識別組件,調(diào)用該組件生成得 EXE 文件體積很小。

        下面我們用 aardio 敬請關(guān)注程語言寫個例子,代碼很簡單,先上圖看效果:

        請復(fù)制下面得源代碼粘貼到 aardio 中,再按「運(yùn)行」按鈕就專業(yè)看到上圖得效果 —— 程序自動找到了屏幕上得文本,鼠標(biāo)自動移到了該位置。

        import mouse;import dotNet.ocr;//創(chuàng)建 OCR 對象var ocr = dotNet.ocr();//識別屏幕上得文字var ocrResult = ocr.detectScreen()//查找文字在屏幕上得位置var x,y = ocrResult.findPoint("把鼠標(biāo)移動到這里",0.1);mouse.moveTo(x,y,true)

        上面就是一個完整得程序了,aardio 寫程序就這嗎簡單。

        這個系統(tǒng) OCR 組件其實(shí)是一個 UWP 組件,不過 aardio 調(diào)用 .NET 組件、或者調(diào)用 UWP 組件都非常方便。參考「 aardio 范例 > 調(diào)用其他語言 > dotNet > 調(diào)用 UWP 接口 」:

        屏幕找字:調(diào)用開源、免費(fèi)、強(qiáng)大、綠色得 chineseocrlite

        aardio 基于 chineseocrlite 封裝了 string.ocrLite 擴(kuò)展庫,圖片生成綠色、獨(dú)立得 EXE 文件,帶模型生成得EXE打包后僅 十幾 MB。

        調(diào)用源代碼很簡單,先上圖看效果:

        請復(fù)制下面得源代碼,粘貼到 aardio 中,再按「運(yùn)行」按鈕就專業(yè)看到上圖得效果 ——鼠標(biāo)自動移到了屏幕上指定文本所在位置。

        import mouse;import string.ocrLite;import string.ocrLite.defaultModels;//創(chuàng)建 OCR 對象var ocr = string.ocrLite();//識別屏幕上得文字var ocrResult = ocr.detectScreen();//查找文字在屏幕上得位置var x,y = ocrResult.findPoint("把鼠標(biāo)移動到這里",0.2);mouse.moveTo(x,y,true);

        大家專家注意到了,aardio 中很多庫得接口、用法都一樣,專業(yè)一通百通。

        如果是制作自動化機(jī)器人之類得軟件,識別屏幕上文字得能力就好像機(jī)器人得眼睛一樣重要。尤其是現(xiàn)在很多無窗口界面得軟件,通過 OCR 組件就專業(yè)較好地定位到界面上指定得部位進(jìn)行準(zhǔn)確得操作。大家專業(yè)試試 OCR 結(jié)合 aardio 標(biāo)準(zhǔn)庫里得 winex.mouse, mouse @專業(yè)實(shí)現(xiàn)非常酷得效果,另外 aardio 工具里得「探測器->窗口探測器」也很重要(專業(yè)生成示例代碼)。

        屏幕找色

        找色很簡單,請復(fù)制下面得范例代碼粘貼到 aardio 中,然后點(diǎn)「運(yùn)行」就專業(yè)看到效果:

        import gdi;import win;import mouse;import soImage;//抓屏var imgScreen = soImage();imgScreen.capture(); //在圖像上搜索指定顏色得點(diǎn),//第壹個參數(shù)是一個表示查找顏色得數(shù)值,更多參數(shù)用法請查看智能提示var x,y = imgScreen.findColor( gdi.RGB(48,171,53) );//返回該坐標(biāo)所在顯示器左上角位置var scrX,scrY = win.getScreenPos(x=x,y=y); //快速移動鼠標(biāo)(相對移動)mouse.move(scrX,scrY,true);//獲取虛擬屏幕位置,雙屏幕時專家起始坐標(biāo)專家返回負(fù)數(shù)var scrX,scrY = win.getScreenPos(); //慢速移動鼠標(biāo),顯示移動軌跡mouse.moveTo(x+scrX,y+scrY,true);

        注意 mouse.moveTo() 函數(shù)移動鼠標(biāo)時專業(yè)看到移動軌跡,改為 mouse.move() 函數(shù)專業(yè)直接移動到指定坐標(biāo)。

        屏幕找圖

        aardio 里屏幕找圖就更簡單了,首先加載要查找得圖像:

        import soImage;var img = soImage();img.load("/res/find.jpg");

        "/res/find.jpg" 專業(yè)是硬盤上得圖像文件路徑,也專業(yè)是 EXE 資源文件路徑(專業(yè)生成獨(dú)立 EXE )。

        也專業(yè)自內(nèi)存直接加載圖像,如下用第 2 個參數(shù)指定圖像文件后綴名:

        img.setBytes( imgBytes,"gov.png");

        查找圖像要盡專家得小,并盡專家裁剪去掉背景,突出查找特征。

        使用 img.findImage 全屏找圖,也專業(yè)使用下面得函數(shù)在指定窗口內(nèi)找圖:

        var sm,x,y = imgFind.findImageInWindow(hwnd);

        上面得 hwnd 參數(shù)指定窗口句柄。返回值 sm 為相似度( 0 到 100 之間得值,100 為完全相似,0 為完全不相似 ),返回值 x,y 為找到圖像得右下角坐標(biāo)。

        自動化操作

        找圖找色找字得目得是自動化操作,aardio 與自動化操作有關(guān)得庫如下:

        win //窗口操作winex //外部程序窗口操作winex.accObject //Microsoft Active Accessibility 自動化接口winex.key //后臺鍵盤操作winex.mouse //后臺鼠標(biāo)操作key //鍵盤操作mouse //鼠標(biāo)操作process //進(jìn)程操作soImage //找圖找色

        與自動化操作有關(guān)得范例:

        網(wǎng)頁自動化就不必用上面這些了,直接使用瀏覽器控件就專業(yè),可參考我之前寫得文章 更簡單地自動化操作瀏覽器 。「aardio 范例 > Web 界面」也專業(yè)看一下:

         
        (文/微生文銳)
        免責(zé)聲明
        本文僅代表作發(fā)布者:微生文銳個人觀點(diǎn),本站未對其內(nèi)容進(jìn)行核實(shí),請讀者僅做參考,如若文中涉及有違公德、觸犯法律的內(nèi)容,一經(jīng)發(fā)現(xiàn),立即刪除,需自行承擔(dān)相應(yīng)責(zé)任。涉及到版權(quán)或其他問題,請及時聯(lián)系我們刪除處理郵件:weilaitui@qq.com。
         

        Copyright ? 2016 - 2025 - 企資網(wǎng) 48903.COM All Rights Reserved 粵公網(wǎng)安備 44030702000589號

        粵ICP備16078936號

        微信

        關(guān)注
        微信

        微信二維碼

        WAP二維碼

        客服

        聯(lián)系
        客服

        聯(lián)系客服:

        在線QQ: 303377504

        客服電話: 020-82301567

        E_mail郵箱: weilaitui@qq.com

        微信公眾號: weishitui

        客服001 客服002 客服003

        工作時間:

        周一至周五: 09:00 - 18:00

        反饋

        用戶
        反饋

        主站蜘蛛池模板: 精品一区二区三区中文| 国产一区二区三区在线免费观看| 无码人妻AⅤ一区二区三区水密桃| 国模精品一区二区三区视频| 交换国产精品视频一区| 日韩精品一区二区三区不卡| 亚洲一区二区三区高清视频| 日本不卡一区二区视频a| 精品一区二区三区无码免费直播 | 人妻无码一区二区视频| 韩国精品一区二区三区无码视频| 中文无码精品一区二区三区| 精品国产天堂综合一区在线| 激情内射亚洲一区二区三区爱妻| 精品亚洲综合在线第一区| 日韩精品无码一区二区三区AV| 成人h动漫精品一区二区无码| 国产精品高清视亚洲一区二区 | 亚洲乱码一区二区三区在线观看| 亚洲AV无码一区二三区 | 亚洲日本精品一区二区| 亚洲av一综合av一区| 一区二区在线观看视频| 精品亚洲AV无码一区二区三区| 亚洲香蕉久久一区二区| 日韩中文字幕精品免费一区| 无码少妇丰满熟妇一区二区| 国产日韩综合一区二区性色AV| 日韩在线视频一区二区三区| 又紧又大又爽精品一区二区| 无码国产精品一区二区免费3p| 日本成人一区二区| 亚洲AV无码一区二区三区人| 国产精品自拍一区| 无码国产精品一区二区免费式直播 | 3D动漫精品一区二区三区| 99久久精品午夜一区二区| 国内精品视频一区二区三区| 亚洲国产一区视频| 无码日韩精品一区二区三区免费| 国产一区二区三区乱码网站|