Umi-OCR icon indicating copy to clipboard operation
Umi-OCR copied to clipboard

命令行Umi-OCR.exe --path "screenshot.png" --> "kk.txt"无法保存。

Open immmor opened this issue 1 year ago • 13 comments

如图。识别到的文字保存不进kk.txt

immmor avatar Jan 21 '24 09:01 immmor

请试试txt传入绝对路径

hiroi-sora avatar Jan 21 '24 10:01 hiroi-sora

请试试txt传入绝对路径

试了,还是不行

immmor avatar Jan 21 '24 11:01 immmor

图片和txt都试了绝对路径也不行

immmor avatar Jan 21 '24 11:01 immmor

那就奇怪了,我这边测试是绝对和相对路径都工作正常,能写入txt的。

你试试如果用截图功能能否正常写入?调用示例:

Umi-OCR.exe --screenshot --> kk.txt

正常情况下,控制台会先输出本次识别结果,然后打印: Success output to file: D:\......\Umi-OCR\kk.txt

如果没有输出识别结果,或者没有打印 Success output ,则有问题。

hiroi-sora avatar Jan 21 '24 11:01 hiroi-sora

打印了 但是没有保存

immmor avatar Jan 21 '24 12:01 immmor

那么,在软件面板上进行批量识别,可以正常保存结果txt吗

hiroi-sora avatar Jan 22 '24 06:01 hiroi-sora

我也一样不能保存

2.jpg image

D:\Umi-OCR_Rapid_v2.0.2>umi-ocr --path "c:\erp\2.jpg" --> 1.txt

D:\Umi-OCR_Rapid_v2.0.2>Createyourfirstproject Ready to start building?Create arepository for a newidea orbring over an existing repository tokeep contributing toit. —

image

软件会output result to the screen, 需要enter离开。

1.txt 是生成了, 可是没有內容。

trial03 avatar Jan 25 '24 02:01 trial03

@trial03 感谢你提供的信息!我们缩小了问题可能出现的范围。

如果愿意,请进行下列测试:

  1. 用记事本或编辑器打开 UmiOCR-data\py_src\server\cmd_client.py
  2. 第54~60行,原本是:
    try:
        with open(path, mode, encoding="utf-8") as f:
            f.write(text)
        print(f"Success output to file: {path}")
    except Exception as e:
        print(f"[Error] failed to write file {path} : \n{e}")
        return
  1. 将这部分代码改为:(请原样复制下列代码,保证空格缩进一致)
    try:
        with open(path, mode, encoding="utf-8") as f:
            f.write(text)
        print(f"Success output to file: {path}")

        with open(path+".test.txt", mode, encoding="utf-8") as f:
            f.write("测试信息测试信息")
        with open("D:/111.txt", "w", encoding="utf-8") as f:
            f.write(text)
        print("===============")

    except Exception as e:
        print(f"[Error] failed to write file {path} : \n{e}")
        return
  1. 正常通过命令行调用umi-ocr --path "c:\erp\2.jpg" --> 1.txt,检查:
  • 1.txt 有没有正常生成,并写入识别内容?
  • 1.test.txt 有没有正常生成,并写入测试信息测试信息
  • D:/111.txt 有没有正常生成,并写入识别内容?
  • 命令行最后有没有打印 ===============

hiroi-sora avatar Jan 25 '24 03:01 hiroi-sora

Already tested :

image

1.txt 生成 但没有內容 D:/111.txt 有没有生成

trial03 avatar Jan 25 '24 06:01 trial03

在你上图的命令行中,输出repository tokeep contributing toit.就没了吗?后面还有内容吗?比如Success output to file或者[Error] failed to write file

1.test.txt有没有生成?(跟 1.txt 在同一目录下)

hiroi-sora avatar Jan 26 '24 02:01 hiroi-sora

我也是,这样输出了,并没有保存到txt中 并且使用了截图的命令Umi-OCR.exe --screenshot --> kk.txt 也没有保存 到txt image

xiahan4956 avatar Feb 01 '24 05:02 xiahan4956

@hiroi-sora 我这里有相同的问题,我print出部分信息,希望对解决问题有用。

使用如下指令: Umi-OCR.exe --path "E:\batchocr\j-0.jpg" --> d:\test.txt 在initCmd中得到的argv内容为:argv: ['--path', 'E:\batchocr\j-0.jpg', '--'] 此时无法将结果输出到txt文件

使用如下指令: Umi-OCR.exe --path "E:\batchocr\j-0.jpg" “-->” “d:\test.txt” 在initCmd中得到的argv内容为: ['--path', 'E:\batchocr\jpin-0.jpg', '-->', 'd:\test.txt'] 此时结果正常输出到txt文件

jingkanghou avatar Feb 19 '24 03:02 jingkanghou

@jingkanghou 非常感谢测试,看来可能是特殊符号编码问题,我会研究一下

hiroi-sora avatar Feb 21 '24 10:02 hiroi-sora

请问新版本有修复吗

immmor avatar Mar 14 '24 08:03 immmor

请问新版本有修复吗

抱歉,暂时还没。

如果有类似问题,可以用上面用户提出的解决方案:用双引号包裹住 --> ,即 "-->"

hiroi-sora avatar Mar 14 '24 09:03 hiroi-sora

经过测试,> 符号的解析在部分平台上可能有歧义,且程序内难以修复。

使用双引号用法 "-->" 可以避免歧义,确保指令生效。目前已经将 "-->" 的操作说明写入了help和文档。

hiroi-sora avatar Mar 17 '24 16:03 hiroi-sora

新版本发布,已支持更稳定的新指令 "--output" 和 "--output_append" 。

hiroi-sora avatar Mar 29 '24 14:03 hiroi-sora