精易论坛

标题: 按键精灵HTTP本地文字识别 PaddleOCR [打印本页]

作者: jhtzz    时间: 2025-2-9 01:07
标题: 按键精灵HTTP本地文字识别 PaddleOCR

嘿嘿,有许多按键的用户不会写HTTP客户Duan,所以我找了好久的资料,搞定了。
Function ReadBinaryFile(filePath)
    Dim fs, file, stream, fileData
    Set fs = CreateObject("Scripting.FileSystemObject")

    ' 检查文件是否存在
    If Not fs.FileExists(filePath) Then
        MsgBox "文件不存在:" & filePath
        Exit Function
    End If

    Set stream = CreateObject("ADODB.Stream")
    stream.Type = 1  ' 1 表示二进制
    stream.Open
    stream.LoadFromFile filePath

    fileData = stream.Read
    stream.Close

    Set fs = Nothing
    Set stream = Nothing

    ReadBinaryFile = fileData
End Function

Function __HttpPost(posturl,params)
        Dim oauth_http
        Dim fileData
        fileData = ReadBinaryFile(params)
        MsgBox (posturl)
        MsgBox(lenB(fileData))
       
        Set oauth_http = CreateObject("MSXML2.ServerXMLHTTP")
        oauth_http.Open "POST", posturl, False
        oauth_http.setRequestHeader "Content-Type", "application/octet-stream"
        oauth_http.setRequestHeader "User-Agent", "Mozilla/4.0 (iMouse)"

        oauth_http.send fileData
        If oauth_http.Status = 200 Then
            __HttpPost = UTF8ToANSI(oauth_http.responseText)
        Else
            __HttpPost = ""
    End If

//        __HttpPost = StrConv(oauth_http.ResponseBody, vbUnicode)
//        __HttpPost = oauth_http.responseBody
       
        Set oauth_http = Nothing

End Function

Function UTF8ToANSI(text)
        UTF8ToANSI = text
End Function

返回值 = __HttpPost("http://127.0.0.1:18081/ocr0", "D:\PaddleOCR\PaddleOCR-2.9.1\deploy\cpp_infer\buildCPU\Release\imgs\2\03.png")

MsgBox(返回值)  



至于百du飞桨OCR的本地架设,看这篇文章:
https://125.confly.eu.org/forum.php?mod=viewthread&tid=14844866
附件里面有按键和Python 的例子,反而是易语言的,我研究了半天,搞不定HTTP客户Duan,头大。
下载: 源代码按键和PY.rar (2.41 KB, 下载次数: 19)





作者: 算法艺术家    时间: 2025-2-9 01:22
学习学习
作者: 非善类    时间: 2025-2-9 01:23
感谢分享
作者: pshq123    时间: 2025-2-9 04:00
感谢分享
作者: wh1234567    时间: 2025-2-9 05:45
感谢分享
作者: 豆豆灰常开心    时间: 2025-2-9 07:04
感谢楼主分享!
作者: 查过    时间: 2025-2-9 07:08
感谢分享,很给力!~
作者: jhtzz    时间: 2025-2-9 14:17
.版本 2

filebyte = 读入文件 (“D:\PaddleOCR\PaddleOCR-2.9.1\deploy\cpp_infer\buildCPU\Release\imgs\2\03.png”)

httpObj.创建 (“WinHttp.WinHttpRequest.5.1”, )
httpObj.方法 (“SetTimeouts”, 3000, 3000, 3000, 3000)
httpObj.方法 (“Open”, “POST”, “http://127.0.0.1:18081/ocr0”, 假)
' httpObj.写属性 (“Option”, 6, 0)
' httpObj.写属性 (“Option”, 4, 13056)
httpObj.方法 (“SetRequestHeader”, “content-type”, “application/octet-stream”)
httpObj.方法 (“SetRequestHeader”, “content-length”, 取字节集长度 (filebyte))
httpObj.方法 (“Send”, filebyte)
resTxt = httpObj.读文本属性 (“ResponseText”, )
responseCode = httpObj.读数值属性 (“Status”, )
httpObj.清除 ()

谁能帮我完善这个易语言的HTTP客户Duan代码啊,搞不懂了。
作者: bianyuan456    时间: 2025-2-9 21:32
已经顶贴,感谢您对论坛的支持!
作者: year1970    时间: 2025-2-10 09:23
感谢分享
作者: x3325426    时间: 2025-2-10 13:29
已经顶贴,感谢您对论坛的支持!

作者: 4891311a    时间: 2025-2-11 12:41
感谢分享
作者: renhe2018    时间: 2025-2-11 21:30
前来支持一下
作者: 胖子葛格    时间: 2025-2-13 08:58
感谢大神分享~!
作者: 胖子葛格    时间: 2025-2-14 17:48
感谢大师分享~~!
作者: jhtzz    时间: 2025-3-1 16:47
.版本 2
.支持库 spec

.子程序 _按钮2_被单击
.局部变量 返回值, 字节集
.局部变量 filebyte, 字节集

filebyte = 读入文件 (“D:\PaddleOCR\PaddleOCR-2.9.1\deploy\cpp_infer\buildCPU\Release\imgs\2\13.jpg”)
返回值 = 网页_访问 (“http://127.0.0.1:18081/ocr0”, 1, , , , , , , filebyte, )
调试输出 (编码_Utf8到Ansi (返回值))


作者: phcy001    时间: 2025-3-15 10:27
感谢 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
作者: lxn2wyf    时间: 2025-3-15 13:00
厉害啊,解决了不少人的痛点吧!分享下具体步骤哈,让更多人也能用上这功能。按键精灵结合PaddleOCR,效率提升不是一点点呢。
作者: 广大易友    时间: 2025-3-16 10:34
jhtzz 发表于 2025-2-9 14:17
.版本 2

filebyte = 读入文件 (“D:\PaddleOCR\PaddleOCR-2.9.1\deploy\cpp_infer\buildCPU\Release\imgs ...

.版本 2

.子程序 功能_网页访问, 文本型, , 本命令由【精易网页调试助手】生成,请配合精易模块使用。
.局部变量  局_网址, 文本型
.局部变量  局_方式, 整数型
.局部变量  局_提交数据, 文本型
.局部变量  ADD_协议头, 类_POST数据类
.局部变量  局_提交协议头, 文本型
.局部变量  局_结果, 字节集
.局部变量  局_返回, 文本型
' http://127.0.0.1:18081\orc1
局_网址 = "http://127.0.0.1:18081\orc1"
局_方式 = 1
局_提交数据 = "[file path]   ←将此关键词替换到你的表单文件位置"
ADD_协议头.添加 ("User-Agent","Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.87 Safari/537.36")

局_提交协议头 = ADD_协议头.获取协议头数据 ()

局_结果 = 网页_访问 (局_网址, 局_方式, , , , 局_提交协议头, , , 到字节集(局_提交数据), , )
局_返回 = 到文本(编码_编码转换对象(局_结果))
返回(局_返回)
作者: jhtzz    时间: 2025-3-16 13:10
lxn2wyf 发表于 2025-3-15 13:00
厉害啊,解决了不少人的痛点吧!分享下具体步骤哈,让更多人也能用上这功能。按键精灵结合PaddleOCR,效率 ...

好的,需要什么支持,直接找我改进,QQ,1252790557,因为我自己也要用,不断的完善修复BUG。
作者: jhtzz    时间: 2025-3-16 13:11
广大易友 发表于 2025-3-16 10:34
.版本 2

.子程序 功能_网页访问, 文本型, , 本命令由【精易网页调试助手】生成,请配合精易模块使用。

尽量用http://127.0.0.1:18081\orc0,用0接口少了base64加解码,速度更快。


作者: dansui123    时间: 2025-3-25 23:17
非常可以
作者: XJxaiojing    时间: 2025-3-26 01:24
这个分享太棒啦,感谢!
作者: jhtzz    时间: 2025-3-26 01:45
XJxaiojing 发表于 2025-3-26 01:24
这个分享太棒啦,感谢!

使用遇到任何问题,都可以找我,1252790557
作者: jhtzz    时间: 2025-3-26 01:46
dansui123 发表于 2025-3-25 23:17
非常可以

使用遇到任何问题,都可以找我,1252790557
作者: eklove    时间: 2025-3-26 06:41
哈哈,这波操作挺溜啊,按键精灵玩得转PaddleOCR,大佬果然深藏不露呢。不过代码贴一半是想吊我们胃口吗?赶紧补全啊!




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4