You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中按换行符拆分docx文件的字节内容为两部分?

问题解答

不能直接通过在二进制读取的字节内容c中查找'\n'来拆分文本和图片部分,核心原因如下:

  • DOCX并非纯文本格式:DOCX本质是一个ZIP压缩包,内部包含XML结构文件、媒体资源文件(比如你的公式图片)等,和TXT这类按行存储的纯文本文件完全不同。你在Word里看到的“两行”是渲染后的视觉效果,底层存储中,文本和图片是相互独立的模块,不存在对应视觉换行的'\n'分隔符。
  • 二进制流中的'\n'无对应意义:读取到的字节内容里的'\n',大概率是压缩包内部XML文件的格式换行符,和文档里的视觉行没有关联,用它拆分只会得到混乱的片段,根本无法区分出目标文本和图片部分。

如果要提取DOCX里的文本和图片,建议用专门的处理库,比如python-docx,示例代码如下:

from docx import Document

doc = Document('text.docx')

# 提取文本部分
for para in doc.paragraphs:
    if para.text.strip():
        print("文本内容:", para.text)

# 提取图片并保存
for rel in doc.part.rels.values():
    if "image" in rel.target_ref:
        image_data = rel.target_part.blob
        with open('equation.png', 'wb') as img_file:
            img_file.write(image_data)

内容的提问来源于stack exchange,提问作者Linh Chi Nguyen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 19:31:17