用Python写几行代码,一分钟搞定一天工作量,同事直呼:好家伙!.docxVIP

用Python写几行代码,一分钟搞定一天工作量,同事直呼:好家伙!.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
用Python写几行代码,一分钟搞定一天工作量,同事直呼:好家伙! 写代码之前都先明确完整的问题需要分为几个小步骤实现。从需求中我们或许可以将代码分为以下几步: “ 猎取会议通知 Notice 文件夹下的全部文件; 解析每一份 Word 文件,猎取需要的四个信息,输出到 Excel 中; 保存 Excel 文件 ” 有了规律就有了写代码的思路了。第 1 步可以由 glob 库完成,后面两步就是操作 Word 的 python-docx 库和操作 Excel 的 openpyxl 库的交互协作了。 这两个库我们都有说过,假如你不生疏,肯定要先阅读下面的文章! ??python-docx操作Word详解 ??openpyxl操作Excel详解 代码实现 首先导入需要的库: from?docx?import?Document from?openpyxl?import?load_workbook import?glob 将模板 Excel 读取进程序: path??=?rC:\Users\xxx?#?路径为会议通知文件夹和?Excel?模板所在的位置,可按实际情况更改 workbook?=?load_workbook(path?+?r\Meeting_temp.xlsx) sheet?=?workbook.active 写任何批处理的代码之前都建议先写一下单次操作的代码,因而我们先完成对 会议通知 1.docx 文件的解析,确保无误。现在对于文档的结构和关键信息的位置尚不明确,可以先将 Word 以段落 Paragraph 为单位输出观看: wordfile?=?Document(path?+?r\Notice\会议通知?1.docx) for?paragraph?in?wordfile.paragraphs: ????print(paragraph) 文件的文字排布脉络比较清楚,基本是一句话对应一个段落,而需要的信息可以简约通过推断每句话(每段话)前几个字而明确: ????for?paragraph?in?wordfile.paragraphs: ????????if?paragraph.text[0:5]?==?学习时间:: ????????????study_time?=?paragraph.text[5:] ????????if?paragraph.text[0:4]?==?掌管人:: ????????????host?=?paragraph.text[4:] ????????if?paragraph.text[0:5]?==?学习方式:: ????????????study_type?=?paragraph.text[5:] 对于学习内容的猎取比较特殊,不像其他三个信息,都在一句话中,且关键字就为前几个字: 可以看到,“学习内容” 四个字和真正包含的内容分散在不同的句子中. 这里简约用一个策略: “ 建立一个空列表存放,然后遍历每一段推断,假如一个字符为数字且其次个字符为中文顿号 “、” 就猎取存放到列表中。最终把列表中的元素重新组合成一个长字符串即可: ” ????content_lst?=?[] ????for?paragraph?in?wordfile.paragraphs: ????????if?paragraph.text[0:5]?==?学习时间:: ????????????study_time?=?paragraph.text[5:] ????????if?paragraph.text[0:4]?==?掌管人:: ????????????host?=?paragraph.text[4:] ????????if?paragraph.text[0:5]?==?学习方式:: ????????????study_type?=?paragraph.text[5:] ????????if?len(paragraph.text)?=?2: ????????????if?paragraph.text[0].isdigit()?and?paragraph.text[1]?==?、: ????????????????content_lst.append(paragraph.text) ????content?=??.join(content_lst) 完成了解析 Word 文件之后,就需要把内容输出的 Excel 文件中了。 简约来说,就是将上面代码猎取到的几个元素组合成一个列表,通过 sheet.append(list) 的方法写入 Excel 文件中: number?=?0?#?全局中设置一个变量用于计数,做为序号输出 wordfile?=?Document(path?+?r\Notice\会议通知?1.docx)

文档评论(0)

duanbingbing + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档