import win32com.client
import os
import time
import logging
from logging import handlersdef update_doc(file):word = win32com.client.DispatchEx("Word.Application")                                                               # 模拟打开 officetry:doc = word.Documents.Open(file)                                                                                 # 打开文件doc.TablesOfContents(1).Update()                                                                                # 更新目录doc.Close(SaveChanges=True)                                                                                     # 关闭文档word.Quit()                                                                                                     # 退出except:print(file,"文件无目录!")def run():#log = Logger(file_dir + '..\\Log\\' + 'codeDirLog.log', level='debug')#Logger('error.log', level='error').logger.error('error')#file = os.path.realpath('../Demo/') + '\\'                                                                         # 获取当前文件路径,并在尾部添加‘\’file=r'D:\Desktop\EJinDiao\static_file\上海国际机场股份有限公司'# file = os.path.realpath('')+'\\DataFileRes\\'                                                                                           # 获取当前文件路径,并在尾部添加‘\’files = os.listdir(file)                                                                                            # 获取当前路径下所有文件名称file_names = [f for f in files if f.endswith((".doc", ".docx"))]                                                    # 将所有word文件名称存入file_namesprint('待处理的文件列表:',file_names)count = 1for file_name in file_names:if '~$' not in file_name:file_path = os.path.join(file, file_name)                                                                   # 将文件路径与文件名连接在一起print("开始处理:",file_name)update_doc(file_path)                                                                                       # 更新目录ticks_3 = time.time()print(count,'>>',file_name,"处理完成!",time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(ticks_3)))log_str = str(count)+'>>'+file_name+"处理完成!"+time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(ticks_3))#log.logger.info(log_strT)count = count + 1print('文件处理完成!')if __name__== "__main__" :run()class Logger(object):level_relations = {'debug':logging.DEBUG,'info':logging.INFO,'warning':logging.WARNING,'error':logging.ERROR,'crit':logging.CRITICAL}#日志级别关系映射def __init__(self,filename,level='info',when='D',backCount=3,fmt='%(asctime)s - %(pathname)s[line:%(lineno)d] - %(levelname)s: %(message)s'):self.logger = logging.getLogger(filename)format_str = logging.Formatter(fmt)#设置日志格式self.logger.setLevel(self.level_relations.get(level))#设置日志级别sh = logging.StreamHandler()#往屏幕上输出sh.setFormatter(format_str) #设置屏幕上显示的格式th = handlers.TimedRotatingFileHandler(filename=filename,when=when,backupCount=backCount,encoding='utf-8')#往文件里写入#指定间隔时间自动生成文件的处理器#实例化TimedRotatingFileHandler#interval是时间间隔,backupCount是备份文件的个数,如果超过这个个数,就会自动删除,when是间隔的时间单位,单位有以下几种:# S 秒# M 分# H 小时、# D 天、# W 每星期(interval==0时代表星期一)# midnight 每天凌晨th.setFormatter(format_str)#设置文件里写入的格式self.logger.addHandler(sh) #把对象加到logger里self.logger.addHandler(th)

python 生成word目录相关推荐

  1. python生成word目录_Python 文件与目录操作方法总结

    Python 有很多内置的模块和函数可用于文件的操作处理,这些函数都分布在几个模块上:如 os,os.path,shutil 和pathlib 等等.本文收集了许多您需要知道的函数,以便在 Pytho ...

  2. python生成word目录_Word&Python-创建目录

    我使用python的pywin32.client扩展并构建Word文档.我尝试了很多很好的方法来生成ToC,但都失败了. 我认为我想做的是调用ActiveDocument对象,并通过MSDN页面中的以 ...

  3. python生成word目录_使用Python更新MS Word .docx文档的目录(目录)

    我使用python包" python-docx"来修改MS Word .docx文档的结构和内容.该软件包无法更新TOC(目录)[Python: Create a "Ta ...

  4. RPA教学:python 生成 word、ppt 操作源码分享

    了解RPA: www.i-search.com.cn 学习RPA https://support.i-search.com.cn/ 下载RPA: https://www.i-search.com.cn ...

  5. python生成word中文字体

    python生成word中文字体 我们今天用python生成word文件,主要是用到了PyRTF包生成rtf文件,由于PyRTF的包中文教程比较少,所以特此记录几篇文章,也希望给大家有一些帮助. 开始 ...

  6. python生成word 带目录_利用python程序生成word和PDF文档的方法

    一.程序导出word文档的方法 将web/html内容导出为world文档,再java中有很多解决方案,比如使用Jacob.Apache POI.Java2Word.iText等各种方式,以及使用fr ...

  7. python生成word文档_python实现的生成word文档功能示例

    本文实例讲述了python实现的生成word文档功能.分享给大家供大家参考,具体如下: 每月1次的测试费用报销,需要做一个文档.干脆花点时间写个程序吧. # -*- coding: utf-8 -*- ...

  8. python生成word图表_工作汇报神技!用Python三步生成带有图表的word报表

    最近在项目中做了一个生成并导出word报表的功能,在这里分享给大家. 经过查看ESPC原有的生成报表代码和网上查阅的一些方法,解决方案的思路如下: 1. 利用pychartdir库生成图表,保存图片, ...

  9. python生成word文档的表格_2018-10-04 [日常]用Python读取word文档中的表格并比较

    演示如下. 两个简单的word文档, 各有一个表格: 读取文档中的表格到列表(为演示只对单列表格操作): import docx def 取表格(文件名): 文件 = docx.Document(文件 ...

  10. python提取word目录_python批量提取word内信息

    单位收集了很多word格式的调查表,领导需要收集表单里的信息,我就把所有调查表放一个文件里,写了个python小程序把所需的信息打印出来 #coding:utf-8 import os import ...

最新文章

  1. 在化学教学中怎么用ChemOffice
  2. Document-对象属性和常用的对象方法
  3. 公交车座椅上有个洞,竟是为了…很多人都不知道
  4. 计算机网络课程计划,计算机网络教学计划2017
  5. python CS游戏1--角色创建,武器购买
  6. python基础(十三)
  7. 作者:杨青海(1965-),男,博士,中国标准化研究院高级工程师。
  8. android点击出现菜单,Android 点击按钮弹出菜单
  9. Oracle Database 中 B*Tree 索引内部维护
  10. bzoj 4818: [Sdoi2017]序列计数(DP+矩阵快速幂)
  11. UIKit 框架之UIScrollView
  12. STM32 使用SPI读写FLASH(W25Q64型号)
  13. 第二代支付系统专题之报文篇(一)小额支付报文完整版(含二代新增功能业务说明)
  14. 非淡泊无以明志,非宁静无以致远。
  15. 故障解决:发生系统错误 67 找不到网络名
  16. cf 1450 F The Struggling Contestant
  17. [转]设置IE背景色保护你的眼睛视力_鹤壁吧_贴吧
  18. mysql bigint 长度最大多少位_bigint 有多少位
  19. 揭阳市人民医院基于对称双数据中心的双活容灾系统建设项目
  20. 备战第十二届蓝桥杯电子类《EDA设计与开发》国赛

热门文章

  1. android类似iphone照片幻灯片,8个最佳照片编辑应用让你的Android或iPhone照片看起来不可思议...
  2. 正己尽己【管理学之六】
  3. java的平方函数_java中的数学函数Math方法记录
  4. box-sizing属性是什么
  5. graphpadY轴设置刻度不均匀_Matlab画图技巧: 不需要敲代码的傻瓜式操作流程
  6. ESP32-C3入门教程 IoT篇⑤——阿里云 物联网平台 EspAliYun RGB LED 实战之设备生产流程
  7. CS系统设计与开发——人事档案管理系统的设计与实现
  8. 英语语法 - the + 形容词 的意义
  9. C++(一)#pragma once用法
  10. android 设置iptv vlan tag的命令,关于VLAN TAG的命令行设置