【问题标题】:Python Writing huge string in text file with a new line character every 240 charactersPython在文本文件中写入巨大的字符串,每240个字符换行一次
【发布时间】:2021-03-12 15:53:01
【问题描述】:

我需要将 word 文档转换为 html 代码,然后将其保存到 .txt 文件中,其中行数不超过 100 个字符(稍后会有一个过程,如果它们是,则不会超过 255 个字符不在单独的行中)。

到目前为止,我已经成功(尽管欢迎使用更好的解决方案)设法将 .docx 文件转换为 html 并将该变量部署到 .txt 文件中。但是,我无法弄清楚如何分隔线。是否有任何集成功能可以实现这一点?

import mammoth

with open(r'C:\Users\uXXXXXX\Downloads\Test_Script.docx', "rb") as docx_file:
    result = mammoth.convert_to_html(docx_file)
    html = result.value # The generated HTML
    messages = result.messages # Any messages, such as warnings during conversion
    
with open(r'C:\Users\uXXXXXX\Downloads\Output.txt', 'w') as text_file:
    text_file.write(html)

【问题讨论】:

  • 没有说明,但我怀疑你不希望单词中间有换行符,或者标签对吗?
  • html 中每 100 个字符插入一个换行符对你有用吗?
  • 抱歉,不需要。只需每 100 个字符插入一个换行符就可以了,是的。

标签: python html mammoth


【解决方案1】:

在这种情况下,你可以这样做

html = "..."
i = 100
while i < len(html):
    html = html[:i] + "\n" + html[i:]
    i += 101

【讨论】:

  • 谢谢。我可能需要一个额外的问题,但是,将 word 文档转换为 html 时是否可以保持 word 颜色格式?
  • @JaviTorre 可能。 Docx 基本上是带有香料的 html,所以使用适当的库,是的。但是,docx 格式是专有的,因此几乎没有关于该主题的文档。您可能想为此提出一个额外的问题。我只知道如何在 python 中将字符插入字符串:D
猜你喜欢
  • 2021-10-26
  • 1970-01-01
  • 2011-02-24
  • 1970-01-01
  • 1970-01-01
  • 2021-12-02
  • 2015-04-09
  • 1970-01-01
相关资源
最近更新 更多