Python을 사용하여 PDF에서 Excel로 데이터 입력 자동화
7683 단어 productivityshowdevpython
이것은 테스트 데이터입니다.
코드로 이동합시다!
먼저 종속성을 가져와야 합니다.
from tika import parser
import pprint
from collections import defaultdict
import re
import pandas as pd
그런 다음 PrettyPrinter를 정의하고 PDF 파일의 내용을 가져와 목록으로 변환해야 합니다.
pp = pprint.PrettyPrinter(indent=3)
parsedPDF = parser.from_file("final-test.pdf")
content = parsedPDF['content']
contentlist = content.split('\n')
분할 결과 목록에서 빈 문자열을 제거합니다.
contentlist = list(filter(lambda a: a != '', contentlist))
알고리즘에 사용할 반복자 및 기타 플래그를 만듭니다. 줄당 PDF 내용의 반복자입니다.
iterateContent = iter(contentlist)
스크랩한 데이터의 사전 자리 표시자
data = defaultdict(dict)
얼마나 많은 블록을 얻을 수 있었는지 계산하는 카운터
cntr = 0
특정 데이터 블록에 있는 라인 표시기
line = 1
알고리즘은 cntr 및 line 플래그를 사용하여 우리가 새 블록 또는 기존 블록에 있는지 확인합니다.
while True:
try:
string = next(iterateContent)
except StopIteration:
break
if re.match('^[A-Z\s]+$', string):
cntr += 1
data[cntr]['Name'] = string
line = 2
print('matched')
elif line == 2:
data[cntr]['Address'] = string
line += 1
elif line == 3:
data[cntr]['Website'] = string
line += 1
print("Total data:", len(data.keys()))
Dataframe에 데이터 설정
df = pd.DataFrame(data.values())
df.index += 1
print(df)
데이터 프레임을 엑셀에 쓰기
writer = pd.ExcelWriter("dataframe.xlsx", engine='xlsxwriter')
df.to_excel(writer, sheet_name='output', index=False)
writer.save()
최종 결과:
모두 감사합니다.
Reference
이 문제에 관하여(Python을 사용하여 PDF에서 Excel로 데이터 입력 자동화), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/stokry/automate-data-entry-from-pdf-to-excel-with-python-1hm텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)