1.制作字庫
1.截取需要的圖片
2.這里截取了“火狐主頁”四個字,接下來抓取文字的顏色
3.顏色由是由三個部分組成,即R G B其中的R是由00-FF(16進制) 即0-255個數值表示。同樣的GB都是一樣的道理。這樣就出現一個偏差的問題,需要加偏差來涵蓋偏差內的所有顏色。
4.加完偏差會發現字體變清晰,點擊提取點陣,再定義文字名字,就可以添加到字庫了
2.用python結合字庫識別文字
1.加載dm.dll
$regsvr32 dll文件路徑
2.編寫python腳本利用字庫識別文字
#coding:gbk import win32com.client dm = win32com.client.Dispatch('dm.dmsoft') dm.setDict(0, 'c:\dm_soft.txt') dm.useDict(0) """ 函數原型: string FindStrEx(x1,y1,x2,y2,string,color_format,sim) 參數定義: x1 整形數:區域的左上X坐標 y1 整形數:區域的左上Y坐標 x2 整形數:區域的右下X坐標 y2 整形數:區域的右下Y坐標 string 字符串:待查找的字符串, 可以是字符串組合,比如"長安|洛陽|大雁塔",中間用"|"來分割字符串 color_format 字符串:顏色格式串, 可以包含換行分隔符,語法是","后加分割字符串. 具體可以查看下面的示例.注意,RGB和HSV格式都支持. sim 雙精度浮點數:相似度,取值范圍0.1-1.0 """ ret = dm.FindStrFastE(0, 0, GetSystemMetrics(0), GetSystemMetrics(1), "火狐主頁", "000000-909090", 1.0) ret = ret.split("|") if ret[0] == u"-1" : print "find the word"
3.此外,還可以用大漠實現鼠標移動、點擊等。
dm.moveto(x, y)
dm.RightClick()




