在大学里网站建设属于什么专业网站项目建设流程图
web/
2025/10/7 7:51:09/
文章来源:
在大学里网站建设属于什么专业,网站项目建设流程图,网上信息发布平台,建站seo课程#x1f935;♂️ 个人主页#xff1a;艾派森的个人主页 ✍#x1f3fb;作者简介#xff1a;Python学习者 #x1f40b; 希望大家多多支持#xff0c;我们一起进步#xff01;#x1f604; 如果文章对你有帮助的话#xff0c; 欢迎评论 #x1f4ac;点赞#x1f4… ♂️ 个人主页艾派森的个人主页 ✍作者简介Python学习者 希望大家多多支持我们一起进步 如果文章对你有帮助的话 欢迎评论 点赞 收藏 加关注 目录
一、Python处理Excel
二、提取PDF表格到excel
三、往期推荐
文末推荐
文末福利 一、Python处理Excel Python处理Excel的好处
1.批量操作当要处理众多Excel文件时例如出现重复性的手工劳动那么使用Python就可以实现批量扫描文件、自动化进行处理利用代码代替手工重复劳动实现自动化是Python第一个比Excel强大的地方
2.大型文件当Excel文件超过几十兆、甚至上百兆时打开文件很慢、处理文件更加慢这时候若使用Python会发现处理几十兆、几百兆甚至几GB都是没有问题的
3.当使用Excel进行复杂的计算时会使用VBA但是VBA本身是过时并且复杂的语言Python是当前最简单且容易实现的一门语言用Python能够处理比VBA难度更高的业务逻辑
4.Python是通用语言不仅可以处理Excel使用Python就可以得到很多额外的功能例如爬虫、发布网页的Web服务、与数据库进行连接、同时结合word和PPT进行处理、加入定时任务处理、人工智能分析等各种额外的功能这是Excel和VBA所不具备的 Python处理Excel主要有三大类库
1.pandas是Python领域非常重要的用于数据分析和可视化的类库在处理Excel中90%可以利用pandas类库就可以搞掂利用pandas就可以读取Excel、处理Excel和输出Excel但是pandas也有缺点就是无法做到格式类例如Excel中合并单元、大量复杂的样式看起来很精美的时候用pandas无法搞掂此时依然是使用pandas结合openyxl、xlwings来搞掂需求
2.openpyxl若电脑上未安装office时也可以使用openpyxl这个类型可以运行在linux上并且也可以实现操作大部分Excel格式和样式的功能使用它配合pandas也可以完成大部分场景的需求
3.xlwings比openyxl更加强大只能运行在Windows或者Mac系统并且该系统中必须安装了office才能运行xlwings的原理就是基于当前系统已经安装好的office软件来进行功能的拓展来操作Excel 使用pandas的时候经常会结合其他类库来完成更加复杂的功能 requests, bs4可以完成爬虫的功能 flask可以做网页把表格展示在网页上 Matplotlib读取表格后进行可视化 sklearn进行复杂的数据分析时也可以结合机器学习Sklearn把读取的Excel数据进行数据分析和机器学习 Python-docx也可以结合Python-docx类库实现Excel和word的互通 smtplib也可以使用smtplib讲Excel数据发送邮件出去 开发环境
操作系统使用windows, mac都可以
Python版本系统中需要安装Python3.6以上的版本Python2已经过期不建议使用Python3.6以前的版本功能相对弱最好就是采用Python3.6以上的版本
开发工具有两个可以选择jupyter notebook是个网页编辑器可以运行Python常常用于交互性、探索性的开发pycharm用于成熟脚本或者web服务的一些开发这两个工具可以随意选择
重要类库xlwings, pandas, matplotlib等
二、提取PDF表格到excel 从PDF文件获取表格中的数据也是日常办公容易涉及到的一项工作。一个一个复制吧效率确实太低了。用Python从PDF文档中提取表格数据并写入Excel文件灰常灰常高效。上市公司的年报往往包含几百张表格用它作为例子再合适不过搞定这个其他含表格的PDF都是小儿科了。今天以保利地产年报为例这个PDF文档中有321页含有表格总表格数超过这个数了。 先导入PDF读取模块pdfplumber随便挑一页看下表格数据的结构。如下我们挑了第4页pages[3]来读取其中的表格并显示。这里读取表格用到了extract_tables()即默认每页有多个表格。它会将单个表格的数据按行读取存入列表再将每个表格的所有数据汇总存到一个上一级列表最后将所有表格的数据汇总到一个大列表。而extract_table()方法则只能读一张表当一个页面有多张表就默认选第一个因此会漏掉后面的。而且它们的数据结构也不同差异如下。 “保利地产年报”第四页如图所示读取的结果存到列表table显示如下 #观察读取出来的表格的数据结构
import pdfplumber
with pdfplumber.open(保利地产年报.pdf) as p:page p.pages[3] #选取第4页(起始页为0)table page.extract_tables() #多表格读取存为嵌套列表print(table)
[[[, 常用词语释义, None, None, None, None, None, ], [中国证监会, None, , 指, , , 中国证券监督管理委员会, ], [国资委, None, , 指, , , 国务院国有资产监督管理委员会, ], [上交所, None, , 指, , 上海证券交易所, None, None], [公司、本公司、保利地产, None, 指, None, None, 保利发展控股集团股份有限公司原名称保利房\n地产集团股份有限公司, None, None], [报告期、本报告期, None, , 指, , 2018年度, None, None], [元、万元、亿元, None, , 指, , 人民币元、人民币万元、人民币亿元, None, None]], [[公司的中文名称, 保利发展控股集团股份有限公司], [公司的中文简称, 保利地产], [公司的外文名称, Poly Developments and Holdings Group Co., Ltd.], [公司的外文名称缩写, PDH], [公司的法定代表人, 宋广菊]], [[, 董事会秘书, 证券事务代表], [姓名, 黄海, 尹超], [联系地址, 广东省广州市海珠区阅江中路688号保利国际广场北塔33层董事会办公室, None], [电话, 020-89898833, None], [传真, 020-89898666-8831, None], [电子信箱, stockpolycn.com, None]], [[公司注册地址, 广州市海珠区阅江中路688号保利国际广场30-33层], [公司注册地址的邮政编码, 510308], [公司办公地址, 广州市海珠区阅江中路688号保利国际广场北塔30-33层], [公司办公地址的邮政编码, 510308], [公司网址, www.polycn.comwww.gzpoly.com], [电子信箱, stockpolycn.com]], [[公司选定的信息披露媒体名称, 《中国证券报》、《上海证券报》、《证券时报》], [登载年度报告的中国证监会指定网站的网址, www.sse.com.cn], [公司年度报告备置地点, 公司董事会办公室]]] 确保可正常读取表格以及了解读取出来的表格的数据结构下面就可以一次性读取出所有表格并存入Excel文件中了。导入相应模块然后使用pdfplumber打开PDF文件。使用Workbook()新建Excel工作簿然后使用remove()将其自带的工作表删除。因为我们想用PDF文件中表格所在的页码给相应的Excel工作表命名以便二者的编号一致方便后续查询。所以需要使用enumerate()给PDF的页从1开始编号。然后使用extract_tables()获取表格数据。 当然如果当页没有表格则extract_tables()获得的是空值None。在后续的操作中空值会报错所以加入if语句来做个判断。只有当列表tables不为空即里面有货的时候才建新的Excel表格并执行后续的写入操作。列表tables若为空即当页没有表格则直接跳到下一页。 当发现当页有表格后新建一个Excel表以“Sheet”加上此时PDF的页码比如“Sheet3”命名。在写入数据时先用一个for循环获得单个表格的数据再用第二个for循环获得表格中一行的数据然后写入Excel表。最后保存数据。由于表格太多程序运行时间较长大约需要3分钟。
import pdfplumber
from openpyxl import Workbook
with pdfplumber.open(保利地产年报.pdf) as p:wb Workbook() #新建excel工作簿wb.remove(wb.worksheets[0])#删除工作簿自带的工作表for index,page in enumerate(p.pages,start 1): #从1开始给所有页编号tables page.extract_tables() #读取表格if tables: #判断是否存在表格若不存在则不执行下面的语句ws wb.create_sheet(fSheet{index}) #新建工作表表名的编号与表在PDF中的页码一致for table in tables: #遍历所有列表for row in table: #遍历列表中的所有子列表里面保存着行数据ws.append(row) #写入excel表wb.save(保利地产年报表格.xlsx) 数百个表格就这样潇洒地复制到Excel表格中了。 如果想要指定某个表格在提取数据的时候指定页码即可。但如果想批量导出大量不同公司的年报的指定表格则需要使用关键词定位了。还好无论深圳市场还是上海市场公司的年报中的标题基本都是唯一的这给我们用标题做关键词提供了方便。假设我们需要提取公司“主要会计数据”下面的表格则用关键词“主要会计数据”定位即可。如下以此为例进行操作。
import os
import pdfplumber
from openpyxl import Workbook pathPDF #文件所在文件夹
files [path\\i for i in os.listdir(path)] #获取文件夹下的文件名,并拼接完整路径
key_words 主要会计数据for file in files:with pdfplumber.open(file) as p:wb Workbook() #新建excel工作簿wb.remove(wb.worksheets[0])#删除工作簿自带的工作表#获取关键词所在页及下一页的页码pages_wanted []for index,page in enumerate(p.pages): #从0开始给所有页编号if key_words in page.extract_text():pages_wanted.append(index)pages_wanted.append(index1)break#提取指定页码里的表格for i in pages_wanted: page p.pages[i]tables page.extract_tables() #读取表格if tables: #判断是否存在表格若不存在则不执行下面的语句ws wb.create_sheet(fSheet{i1}) #新建工作表表名的编号与表在PDF中的页码一致for table in tables: #遍历所有列表for row in table: #遍历列表中的所有子列表里面保存着行数据ws.append(row) #写入excel表wb.save(Excel\\{}.xlsx.format(file.split(\\)[1].split(.)[0])) 以上增加了一段获取关键词所在页码及下一页的页码的程序。之所以要获取关键词下一页页码是因为有些表格会跨页为了不遗漏数据宁愿多获取一点。一旦找到关键词所在页马上用break停止for循环。后面再遍历pages_wanted里面储存的页码提取表格并写入Excel文件并保存即可。批量获取的指定内容保存在Excel文件夹下。 三、往期推荐
Python提取pdf中的表格数据附实战案例 使用Python自动发送邮件
Python操作ppt和pdf基础
Python操作word基础
Python操作excel基础
文末推荐 文末福利 《码上行动》和《Python自动化办公应用大全》二选一免费包邮送出5本 抽奖方式评论区随机抽取5位小伙伴免费送出参与方式关注博主、点赞、收藏、评论区评论“人生苦短拒绝内卷”切记要点赞收藏否则抽奖无效每个人最多评论三次活动截止时间2023-08-08 20:00:00 名单公布时间2023-08-08 21:00:00
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/88359.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!