数据抓取
有没有方法能快速的从多页PDF中抓取特定的数据到EXCEL中?
import PyPDF2 import tabula # 读取PDF文件 pdf_file = open('example.pdf', 'rb') pdf_reader = PyPDF2.PdfFileReader(pdf_file) # 遍历PDF中的每一页并抓取表格数据 dataframes = [] for page_num in range(pdf_reader.getNumPages()): # 从PDF中抓取表格数据 tables = tabula.read_pdf('example.pdf', pages=[page_num+1], lattice=True) # 将表格数据转换为DataFrame对象 for table in tables: df = pd.DataFrame(table) dataframes.append(df) # 关闭PDF文件 pdf_file.close() # 合并所有DataFrame对象 result_df = pd.concat(dataframes)
# 处理DataFrame对象中的数据 result_df = result_df.dropna() # 删除包含NaN值的行 result_df = result_df.astype(str) # 将所有数据类型转换为字符串类型 # 导出数据到Excel文件 result_df.to_excel('result.xlsx', index=False)
import PyPDF2 import pandas as pd import tabula # 读取PDF文件 pdf_file = open('example.pdf', 'rb') pdf_reader = PyPDF2.PdfFileReader(pdf_file) # 遍历PDF中的每一页并抓取表格数据 dataframes = [] for page_num in range(pdf_reader.getNumPages()): # 从PDF中抓取表格数据 tables = tabula.read_pdf('example.pdf', pages=[page_num+1], lattice=True) # 将表格数据转换为DataFrame对象 for table in tables: df = pd.DataFrame(table) dataframes.append(df) # 关闭PDF文件 pdf_file.close() # 合并所有DataFrame对象 result_df = pd.concat(dataframes) # 处理DataFrame对象中的数据 result_df = result_df.dropna() # 删除包含NaN值的行 result_df = result_df.astype(str) # 将所有数据类型转换为字符串类型 # 导出数据到Excel文件 result_df.to_excel('result.xlsx', index=False)
[此贴子已经被作者于2023-3-25 16:31编辑过]
import PyPDF2 pdf_file = open('file.pdf', 'rb') pdf_reader = PyPDF2.PdfFileReader(pdf_file)
page_num = 49 # 0-based index page = pdf_reader.getPage(page_num)
page_content = page.extractText()
import pandas as pd data = pd.read_csv('data.csv')
data.to_excel('output.xlsx', index=False)