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

使用Python InsecureClient拆分PDF并写回HDFS的问题求助

PDF拆分后写入HDFS空白问题排查及修复

问题根因

  • 错误1:PdfFileWriter.appendPagesFromReader() 方法无返回值,代码中赋值给output的变量实际为None,写入空内容到HDFS,导致生成的文件无有效内容。
  • 错误2:appendPagesFromReader() 会追加输入PDF的全部页面到输出对象,不符合单页拆分的需求,且未调用getPage(i)方法提取指定页码的内容。
  • 错误3:PdfFileWriter 生成的PDF内容不能直接写入文件流,需要先写入内存字节缓冲对象,再从缓冲中读取二进制内容写入HDFS。

修复后代码

for i in range(input_pdf.getNumPages()):
    out_pdf  = PdfFileWriter()
    # 提取指定单页添加到输出PDF对象
    out_pdf.addPage(input_pdf.getPage(i))
    filename = "/shared/Team5162/demopdf/"+"document-page%s.pdf" % i
    # 借助BytesIO缓冲生成PDF二进制内容
    with BytesIO() as pdf_buffer:
        out_pdf.write(pdf_buffer)
        # 将缓冲指针移到起始位置读取完整内容
        pdf_buffer.seek(0)
        # 写入HDFS路径
        with client.write(filename) as writeStream:
                writeStream.write(pdf_buffer.read())

内容的提问来源于stack exchange,提问作者Kannan Nair

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 11:24:00