在python中将PDF文件转换为Json

时间:2019-07-01 20:49:33

标签: python

我正在使用pdfminer将pdf文件转换为json文件,并且能够对单个文件进行转换。但是,我需要将大约30,000个pdf文件转换为json文件,但我找不到找到它的好方法。我需要将这些文件隐藏为json,因为我需要对转换后的json文件进行情感分析。

我使用过PDFminer,而我使用的是python 3.7。这不是我的代码。我基本上已经在Google上找到了它,并将其修改以供使用。

'''

导入json

导入操作系统

def extract_text_by_page(pdf_path):
  with open(pdf_path, 'rb') as fh:
      for page in PDFPage.get_pages(fh, 
                                  caching=True,
                                  check_extractable=True):
        resource_manager = PDFResourceManager()
        fake_file_handle = io.StringIO()
        converter = TextConverter(resource_manager, fake_file_handle)
        page_interpreter = PDFPageInterpreter(resource_manager, converter)
        page_interpreter.process_page(page)

        text = fake_file_handle.getvalue()
        yield text

        # close open handles
        converter.close()
        fake_file_handle.close()


def export_as_json(pdf_path, json_path):
  filename = os.path.splitext(os.path.basename(pdf_path))[0]
  data = {'Filename': filename}
  data['Pages'] = []

  counter = 1
  for page in extract_text_by_page(pdf_path):
      text = page[0:10000]
      page = {'Page_{}'.format(counter): text}
      data['Pages'].append(page)
      counter += 1

  with open(json_path, 'w') as fh:
      json.dump(data, fh)

if __name__ == '__main__':
pdf_path = '30513_34-47842.pdf'
json_path = '30513_34-47842.json'
export_as_json(pdf_path, json_path)

0 个答案:

没有答案