JSON 编码错误 - 波兰语和德语标志

问题描述 投票:0回答:1

我正在使用 pdfannots 算法 从突出显示的 PDF 中提取文本。我工作的目的是使用给定的算法来学习德语。问题是输出的 .txt (json) 文件没有显示任何波兰语或德语特殊符号(请参见示例 1)。

我想问是否有一个选项[或者更确切地说如何设置]来使用包含波兰语和德语特殊符号的编码。

Example 1 - how the text with Polish and German signs is shown

正确版本 文字:洛松 内容: rozwiązanie

文件编码设置为utf8,文件也重新保存在notepad++中:

Example 2 - encoding

我尝试修改json文件,但我卡住了。

Anaconda 控制台线:

pdfannots "path" -f json > directories\json_to_csv.txt

谢谢

一些附加信息:

PDF 文件已使用 Goethe FF Clan 字体创建。当我从文件中复制单词并粘贴 p.e.对于 Notepad++/WordPad/浏览器,它也会复制特殊符号。

目前我可以从 .json 输出创建 .csv 文件,但仍然没有德语或波兰语标志 当我尝试创建 markdown (.md) 文件时,也会发生同样的情况。

我还没有在不同的 PDF 文件上尝试过相同的工作流程。我认为这个案子在别的地方。对我来说奇怪的是,这些特殊符号以 utf8 表示法显示(00f6 是 ö 的 unicode 代码点)

json encoding non-ascii-characters python-3.11 pdf-annotations
1个回答
0
投票

我认为 output.txt 包含 \u 结构不是 unicode,而是一些字符的一堆,它们不会被解释为 unicode。

在写入并保存output.txt之前,您可以尝试将输出数据转换为unicode字符串:

# result is somethihg like '... "contents": "rozwi\u0105zanie",...'
# 
output = result.encode().decode('unicode-escape')
© www.soinside.com 2019 - 2024. All rights reserved.