- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
?
?
基于Python的工程图数据分析研究
?
?
陆承佳
摘要:文章介绍了一个可用于自动分析、整理、导出工程图数据的Python脚本。该脚本利用Python标准模块os与第三方模块pdfplumber及xlwt,遍历目标路径下所有PDF格式文件,并提取每张图样中的关键信息,最终统一导入一个Excel工作簿,进而帮助工程师节省大量手动查找和记录所需的时间。
关键词:Python;工程图;PDF;Excel;数据分析
:TP311? ? ?:A
:1009-3044(2019)18-0266-03
Abstract: In this paper, a Python script is written to analyze, dispose and export data of engineering drawings automatically. It uses the standard module os and third-party modules pdfplumber xlwt to traverse all PDF documents in the target path, then extract core data of each drawing and finally import them into an Excel workbook. This script can help engineers save much time spent in manual searching and recording.
Key words: Python; Engineering Drawing; PDF; Excel; Data Analysis
1 背景
无论是在产品设计、制造还是使用环节中,工程图都起到了至关重要的作用——设计者通过图样表达设计思想,制造者依据图样加工、检验、调试产品,使用者借助图样了解结构性能、运作参数等。
通过对比图样信息,工程师可以明确不同产品间的设计差异。但对于部分图面复杂的工程图,一些重要信息不易被直接找到。此外,当涉及图样较多时,工程师的核查分析工作将变得更为烦琐。
文章旨在使用Python程序设计语言编写一个自动化脚本,批量提取PDF工程图内的关键数据并写入Excel工作簿中,进而节省工程师手动查找和记录图样信息所需的时间。
2 开发环境简介
Python 是一門非常通用的高级语言[1]。自20世纪90年代初它诞生至今,Python凭借其简洁性、易读性以及可扩展性,已经成为最受欢迎的程序设计语言之一。
Python不仅自带有强大的标准库,可以执行系统管理、网络通信、文本读写等操作。而且,Python社区提供了大量第三方模块。它们功能极其丰富,覆盖科学计算、网站开发、图形系统等各种领域,并且大多成熟而稳定。
文章以Python 3.7内置的集成开发环境IDLE为平台编写程序,通过遍历某一文件夹内全部PDF格式图样,依次从中读取所需信息,再统一写入Excel工作簿内,最终实现工程图数据自动批量分析、整理、导出功能。
3 主要算法思路
现假定有30张PDF格式的电机图样,工程师需要从中抽取并整理所有电机的图号、供应商号、产地、电压、功率、转速等参数,并存储进一个Excel文档内。
工程图数据提取功能的Python脚本主函数如图1所示。
该功能的实现大致可分为两部分:PDF文档读取和Excel文档写入——分别对应示例代码中的PDF()与Excel()子函数。而在调用PDF()函数前,首先应指明文件所在目录路径,再创建一个列表(list)用以储存信息。接着,调用标准os模块的listdir()函数获取该文件夹的目录内容。
随后,对于其中全部PDF文档,逐一将它们的文件名与文件夹路径拼接,得到完整的文件路径并作为PDF()函数的实参。值得注意的是,虽然Python的列表不必像C/C++的数组一样预先定义元素个数,但为了便于按照paramName列表顺序存放所找到的数据以及优化程序算法,在定义paramValue列表的同时为其赋予了7个“空格”元素。然后,调用PDF()函数从电机图样获取参数并覆盖paramValue初始元素后,将该列表加入paramTable(一个包含列表的列表)中。
最后,调用Excel()函数将paramTable二维列表内所有元素(即30台电机的参数)写入一个Excel工作簿中。
4 PDF文档
4.1 第三方模块选取
目前,Python包管理工具pip已发布上千PDF文档相关项目。文章针对三个常用以读取PDF文本的模块,就它们是否适于提取工程图信息展开了对比研究:
首先,pdfminer3k作为PDFMiner 的Python 3移植版,既可通过命令行使用,又可整
您可能关注的文档
- 互联网+数字化生活的研究与应用.docx
- GIS技术在智慧城市综合管理系统中的应用探索.docx
- 信息技术与会计理论实践的融合研究.docx
- 基于2TLNNsTODIM法的互联网+农业特色小镇发展水平评价研究.docx
- 基于区块链的可验证医疗数据统计方案.docx
- 传统银行与互联网金融公司合作策略分析.docx
- 制造业行业经济增长、产业升级与企业家精神研究.docx
- 基于可搜索加密技术的区块链密文审计系统.docx
- 几种计算机数字图像技术的处理效果研究.docx
- CBTC系统区域控制器(ZC)功能及原理探究.docx
- 选择性必修三 8.2 分析与综合及其辩证关系 课件.ppt
- 《千米级跨度公铁两用悬索桥运维管理规程》.pdf
- 《家用和类似用途自动升降激光雷达清洁机器人》.pdf
- 《渐变焦眼镜用眼镜架》.pdf
- 基金研究-行业主题基金专题研究(二):医药主题基金研究框架及产品优选.pdf
- 永威置业车库金刚砂地坪施工标准图册.docx
- 国企深基坑全流程施工技术手册.docx
- 中国与全球人工智能竞赛 China and the Global AI Race -中国与全球人工智能竞赛长江商学院白皮书.pdf
- 2025年NVIDIA AI研发技术开放日主题演讲-加速计算专场.pdf
- kpmg -2025代理型AI优势:开启人工智能价值新层级研究报告 The Agentic AI Advantage Unlocking the next level of AI value.pdf
文档评论(0)