百度大脑高精度版,含段落信息


【已删除】

防止异常退出的版本

# encoding:utf-8

import requests
import base64
import json
import time

request_url = "https://aip.baidubce.com/rest/2.0/ocr/v1/accurate_basic"
# 二进制方式打开图片文件


access_token = '【请替换为你自己的】'
request_url = request_url + "?access_token=" + access_token
headers = {'content-type': 'application/x-www-form-urlencoded'}


def fun(i):
    time.sleep(0.1)
    print(i)
    f = open('{0:04d}'.format(i + 1) + '.jpg', 'rb')
    img = base64.b64encode(f.read())
    params = {"image": img, "paragraph": 'true'}
    response = requests.post(request_url, data=params, headers=headers)
    if response:
        f2 = open('{0:04d}'.format(i + 1) + '_c.txt', 'w', encoding='utf-8')
        json_data = response.json()
        final_str = ''
        for words_result_idx in json_data['paragraphs_result']:
            one_para = ""
            for sentence_index in words_result_idx['words_result_idx']:
                one_para += json_data['words_result'][sentence_index]['words']
            one_para += "\n"
            final_str += one_para
        f2.write(final_str)


for i in range(305, 468):
    try:
        fun(i)
    except Exception:
        time.sleep(0.5)
        fun(i)
    else:
        pass

效果还不错

政治经济学基础知识.docx (397.7 KB)

本来有16MB的pdf文件,现在被压缩到了397KB

DOC(X)是私有格式,建议换成自由的ODT格式。

OCR这步工作本身不难,关键是后面的人工校对和排版工作。

docx不是私有格式
https://en.wikipedia.org/wiki/Office_Open_XML

上面的ocr文件几乎没有错字,极大简轻了校对工作的难度。

上海工人革命造反总司令部斗争纪要.docx (84.1 KB)

@adt

贴两篇文章:

從今天起,不要使用 docx

Office Open XML

维基百科里的内容:

批评[编辑]

微软公司发表的Office Open XML使用许多非标准的规范,造成与其他办公室软件(如LibreOffice)读取时发生不兼容或内容偏移的情形,目的是让Microsoft Office保持市场优势。

ODF(广泛接受的开放文档规范)编码时会使用其他标准规范(如ISO 639MathML)来进行存储,但OOXML使用非标准的编码进行访问。例如 ODF 里面的颜色代码,不管是表格、文件、演示稿等,红色的代码都是 #FF0000,然而在OOXML里随不同产品,代码分别为:

Word:#FF0000

Excel:#FFFF0000

Powerpoint:#FF0000

OOXML设计的目的是将微软定义的 doc、ppt、xls 二进制格式转成 XML 格式,并没有依照 XML 的特性优化,而其私有格式内含的额外非标准组件也包含在内,例如 ActiveX 等等(过时,且容易用于攻击);第二个原因是 比尔·盖茨 在 1998 年留下的备忘录,提到“不能让其他浏览器可完美显示 MS Office 文件,只能让自家公司的专属 IE 可正确显示”,现在的状况可以说是微软延续了比尔·盖茨的精神,使“现代的 MS Office 存出的 OOXML 档”刻意做成第三方软件不能完善地解读、呈现,显示OOXML并非如其所声称的开放。[12]

这个“open”不等于“free”。

这个格式问题不是什么大问题,关键是使用自由软件的意识。通常都把OOXML文件跟微软的 Office 联系起来,与之对应的是 ODF (Open Document Format)和 自由软件 LibreOffice。

所以最好不要使用 Office (和 WPS )来编辑文件,而是改用 LibreOffice ,既然使用了 LibreOffice ,格式上最好也使用 ODF ,即.odt,.odp,.ods。

1 个赞

很有帮助,我可以在此基础上排一下版。

没你说的那么严重, LibreOffice也可以生成docx。

@mlmmlm_admin 普通用户无法上传odt格式文件。

已解决。

格式问题不是什么大问题,关键是使用自由软件的意识。要引导更多人使用自由软件。

1 个赞