如何将文本导入 Python 并创建 CSV 文件?

问题描述

你好(提前道歉,编程新手,尽我所能)

我的目标是将 pdf 转换为 CSV。

我已使用 PDFminer 将 pdf 文档导入 Python,它将 PDF 中的所有文本粘贴到 Python 中。有没有一种简单的方法来创建一个带有导入文本的 CSV 文件?以不同格式从 Python 中获取这些数据的最佳方法是什么?

我用来导入 PDF 的代码如下:

import io
from pdfminer.converter import TextConverter
from pdfminer.pdfinterp import pdfpageInterpreter
from pdfminer.pdfinterp import PDFResourceManager
from pdfminer.pdfpage import pdfpage
def extract_text_from_pdf(pdf_path):
    resource_manager = PDFResourceManager()
    fake_file_handle = io.StringIO()
    converter = TextConverter(resource_manager,fake_file_handle)
    page_interpreter = pdfpageInterpreter(resource_manager,converter)

    with open(pdf_path,'rb') as fh:
    for page in pdfpage.get_pages(fh,caching=True,check_extractable=True):
        page_interpreter.process_page(page)
        
    text = fake_file_handle.getvalue()
     # close open handles
     converter.close()
     fake_file_handle.close()

     if text:
    return text
if __name__ == '__main__':
print(extract_text_from_pdf(r'C:\Users\Matt\Documents\PDF miner\sample.pdf'))

输出如下:

example PDF in Python

非常感谢您的建议。

解决方法

我不认为这是保存在 CSV 中的好方法 但 例如,您可以根据字符分隔文本。或者,稍后将其保存为 CSV 文件

import csv

text=extract_text_from_pdf(r'C:\Users\Matt\Documents\PDF Miner\sample.pdf').split(",")
writer=csv.writer(open("file.csv","w"))
writer.writerow(text)