python - 我们如何找出某些 uuencoded 文件无法使用 Python 正确解码的原因?

标签 python uuencode

我们正在尝试解码一些嵌入在 txt 文件中的 uuencoded PDF 文件。

我们遇到的问题是大多数 PDF 文件使用 Python 的 uuencode 库解码得很好。这是代码:

try:
    decoded_file,m=uudecode(fileString)
except:
    decoded_file=''

但部分文件解码后无法打开。我们收到消息“打开此文档时出错。文件已损坏且无法修复。”

我们在 Google 上唯一能找到的是我们的文件可以使用 base64 编码,而 Python uuencoding 模块只支持 base32。有没有一种方法可以判断它是使用 base64 还是 base32 编码的?

这是一个 txt 文件的例子,它有一个我们成功解码的嵌入式 uuencoded pdf: http://www.sec.gov/Archives/edgar/data/1108046/000000000011020832/0000000000-11-020832.txt

这是一个失败的例子: http://www.sec.gov/Archives/edgar/data/914257/000000000011005978/0000000000-11-005978.txt

当我们在 Python 中解码这些时,没有弹出任何类型的错误,一切似乎都在正常工作。什么可能导致他们无法正确解码?有没有办法在我们处理它们时标记它?

最佳答案

>>> uu.decode(open('0000000000-11-005978.txt'))
Warning: Trailing garbage

源数据本身已损坏。行尾附近的 .. 进一步证明了这一点。

关于python - 我们如何找出某些 uuencoded 文件无法使用 Python 正确解码的原因?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6904126/

相关文章:

python - 尝试从 pyspark 中的 parquet 文件收集记录时出现异常

shell - 将 sendmail 用于 HTML 正文和二进制附件

python - 扩展 Django 用户模型 OneToOne - 用户配置文件未保存

java - java中的uuencode zipfile

bash - 如何base64编码/dev/random或/dev/urandom?

shell - 替代 UNIX shell 脚本中的 uuencode(从 UNIX 盒子发送电子邮件)

http - 使用 HTTP 时,哪种编码更好,base64、yEnc 还是 uuencode?

python - 从 python 控制台应用程序到 django 作为 UI 最佳实践

python - 如何使用 plt.imshow 和 torchvision.utils.make_grid 在 PyTorch 中生成和显示图像网格?

python - 使用 Mechanize bing 搜索返回空白页