ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Python读取PDF文档中的表格数据

2022-09-05 19:03:06  阅读:172  来源: 互联网

标签:12 Python 30 文档 2021 pdf PDF table page


# -*- coding: utf-8 -*-
# 在pdfplumber模块中 提供了extract_tables()方法
import pdfplumber
import pandas as pd


# 提取PDF文档中的表格
def demo1():
    with pdfplumber.open('file/7_2.pdf') as pdf:
        page = pdf.pages[1]
        for table in page.extract_tables():
            print(table)
        pdf.close()


# 批量提取PDF文档中的表格并写入Excel
def demo2():
    a = 0
    with pdfplumber.open('file/历年中国电影票房榜.pdf') as pdf:
        for i in range(len(pdf.pages)):
            page = pdf.pages[1]
            for table in page.extract_tables():
                df = pd.DataFrame(table)
                df.to_excel(f'file/new_file/{a+2012}年中国电影票房榜单.xlsx', index=None, header=None)
                a += 1
                print(table)
            pdf.close()


demo1()
demo2()


demo1()运行结果

[['排名', '上映日期', '影片名称', '总票房(亿)'], ['1', '2021/9/30', '长津湖', '57.7'], ['2', '2021/2/12', '你好,李焕英', '54.1'], ['3', '2021/2/12', '唐人街探案3', '45.2'], ['4', '2021/9/30', '我和我的父辈', '14.8'], ['5', '2021/5/21', '速度与激情9', '13.9'], ['6', '2021/7/30', '怒火·重案', '13.3'], ['7', '2021/7/9', '中国医生', '13.3'], ['8', '2021/3/26', '哥斯拉大战金刚', '12.3'], ['9', '2020/12/31', '送你一朵小红花', '12.0'], ['10', '2021/4/30', '悬崖之上', '11.9'], ['11', '2021/2/12', '刺杀小说家', '10.4'], ['12', '2021/11/11', '扬名立万', '9.2'], ['13', '2021/4/2', '我的姐姐', '8.6'], ['14', '2021/12/17', '误杀2', '8.4'], ['15', '2021/4/30', '你的婚礼', '7.9'], ['16', '2021/2/12', '人潮汹涌', '7.6'], ['17', '2020/12/24', '拆弹专家2', '7.1'], ['18', '2020/12/31', '温暖的抱抱', '6.7'], ['19', '2021/8/27', '失控玩家', '6.1'], ['20', '2021/7/23', '白蛇2:青蛇劫起', '5.8']]


demo2()运行结果

 


 

 

 

标签:12,Python,30,文档,2021,pdf,PDF,table,page
来源: https://www.cnblogs.com/zhaoyiguang/p/16659198.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有