当我在 python 中使用 print(file.read()) 时如何停止打印 .rtf 文件的属性

How to stop printing the properties of an .rtf file out when I use print(file.read()) in python

我是编码新手 python,当我从文件(仅尝试从 .rtf 打印)打印时遇到问题,因为它显示了所有文件属性。我尝试了多种方法来编写相同的代码,但输出总是相似的。代码示例和输出:

opener=open("file.rtf","r")
print(opener.read())
opener.close()

卡米拉

员工

试一试

{\rtf1\ansi\ansicpg1252\cocoartf1671\cocoasubrtf600
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
{\*\expandedcolortbl;;}
\margl1440\margr1440\vieww10800\viewh8400\viewkind0
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\pardirnatural\partightenfactor0

\f0\fs24 \cf0 Camila\
\
Employees\
\
Try it}

帮忙?如何阻止这种情况发生或者我做错了什么?

使用这个包https://github.com/joshy/striprtf

from striprtf.striprtf import rtf_to_text
rtf = "some rtf encoded string"
text = rtf_to_text(rtf)
print(text)

RTF 文件类型包含的信息不仅仅是文本,如字体等。 Python 以纯文本形式读取 RTF 文件,因此包含此信息。 如果你想得到纯文本,你需要一个可以翻译它的模块,比如 striprtf

确保模块已通过 运行 在命令行中安装:

pip install striprtf

然后,获取您的文本:

from striprtf.striprtf import rtf_to_text
file = open("file.rtf", "r")
plaintext = rtf_to_text(file.read())
file.close()