当前位置:网站首页>批量读取word docx文件指定表格内容,保存在excel文件中
批量读取word docx文件指定表格内容,保存在excel文件中
2022-08-09 12:11:00 【Newnotes】
第一,将DOC文件转换为DOCX文件
第二,将DOCX文中表格内容进行读取并保存
*发文的时候,发文助手说:“此文章质量较低,不会获得较多流量扶持! 可能的原因为:篇幅太短,广告涉嫌违规,外链过多,缺少代码,图片涉嫌违规。”
*发文的时候,发文助手说:“此文章质量较低,不会获得较多流量扶持! 可能的原因为:篇幅太短,广告涉嫌违规,外链过多,缺少代码,图片涉嫌违规。”
*发文的时候,发文助手说:“此文章质量较低,不会获得较多流量扶持! 可能的原因为:篇幅太短,广告涉嫌违规,外链过多,缺少代码,图片涉嫌违规。”
*发文的时候,发文助手说:“此文章质量较低,不会获得较多流量扶持! 可能的原因为:篇幅太短,广告涉嫌违规,外链过多,缺少代码,图片涉嫌违规。”
*发文的时候,发文助手说:“此文章质量较低,不会获得较多流量扶持! 可能的原因为:篇幅太短,广告涉嫌违规,外链过多,缺少代码,图片涉嫌违规。”
*发文的时候,发文助手说:“此文章质量较低,不会获得较多流量扶持! 可能的原因为:篇幅太短,广告涉嫌违规,外链过多,缺少代码,图片涉嫌违规。”
*发文的时候,发文助手说:“此文章质量较低,不会获得较多流量扶持! 可能的原因为:篇幅太短,广告涉嫌违规,外链过多,缺少代码,图片涉嫌违规。”
*发文的时候,发文助手说:“此文章质量较低,不会获得较多流量扶持! 可能的原因为:篇幅太短,广告涉嫌违规,外链过多,缺少代码,图片涉嫌违规。”
*发文的时候,发文助手说:“此文章质量较低,不会获得较多流量扶持! 可能的原因为:篇幅太短,广告涉嫌违规,外链过多,缺少代码,图片涉嫌违规。”
import os
from win32com import client as wc
from win32com import *
import win32com.client
word = wc.Dispatch('Word.Application')
# 将docx文件保存的路径
docxPath = 'C:\\Users\\Administrator\\PycharmProjects\\pythonProject'
# doc文件路径
path = "C:\\Users\\Administrator\\Desktop\\重污染天气企业排污许可副本\\重污染天气企业排污许可副本"
'''
获取doc文件名,创建docx文件路径
'''
def getFileName(path):
filesList = []
for root, dirs, files in os.walk(path):
isExists = os.path.exists(docxPath)
# 新建docx文件夹
if not isExists:
os.makedirs(docxPath)
for file in files:
# 判断尾缀是不是doc
suffix = file.split('.')[1]
if suffix == 'doc':
filesList.append(file)
print(filesList)
return filesList
'''
将doc文件转换成docx文件
'''
def docToDocx(fileNameList):
try:
for fileName in fileNameList:
print("开始处理 文件名:" + fileName)
doc = word.Documents.Open(path + '\\' + fileName)
# [:-4]的意思是选这个字符串从开始到最后倒数第4位(不含)
docxNamePath = docxPath + '\\' + fileName[:-4] + '.docx'
print('转换完成!' + docxNamePath)
doc.SaveAs(docxNamePath, 12, False, "", True, "", False, False, False, False)
finally:
# 一定要记得关闭docx,否则会出现文件占用
doc.Close()
try:
fileNameList = getFileName(path)
docToDocx(fileNameList)
finally:
word.Quit()
from docx import Document
import os
import openpyxl
from openpyxl import Workbook
# 定义指定路径 , 或者自己输入
path = 'C:\\Users\\Administrator\\PycharmProjects\\pythonProject'
# path = input("请输入路径:")
# 新建文件
vv=[]
def excelsave():
workbook = openpyxl.Workbook()
biaoti = [['企业名称', '经度', '纬度']]
wb = Workbook()
wb1 = wb.create_sheet('index', 0)
wb1.title = '管理数据'
filename = 'a.xlsx'
for row2 in range(len(biaoti)):
wb1.append(biaoti[row2])
for row in range(len(vv)):
wb1.append(vv[row])
# wb.save("paiwuxukejianyiguanli.xlsx")
wb.save(filename)
def read(path):
for i in os.listdir(path):
fi_d = os.path.join(path, i)
if os.path.isdir(fi_d):
read(fi_d)
else:
if os.path.splitext(i)[1]=='.docx':
filename=(os.path.join(fi_d))
if filename==r"C:\Users\Administrator\PycharmProjects\pythonProject\venv\Lib\site-packages\docx\templates\default.docx":
print("已经扫描完成,现在要退出了。。。。。。。。。。。。。。。。。")
return
print(filename)
doc = Document(filename)
tables = doc.tables # 获取文档中所有表格对象的列表
print('表格数量', len(tables))
print('------------------------')
qiye = doc.tables[0].rows[0].cells[1] # 获取第一张表第一行第一列数据
jingdu=doc.tables[0].rows[3].cells[1]
weidu=doc.tables[0].rows[3].cells[4]
vv.append([qiye.text,jingdu.text,weidu.text])
print('------------------------')
read(path)
# 打印所有docx的绝对路径
print(vv)
excelsave()
# input("sorry")
#
#
# # Document 类,不仅可以新建word文档,也可以打开一个本地文档
# doc = Document('C:\\Users\\Administrator\\PycharmProjects\\pythonProject\\副本.docx') # 想获取的文档文件名,这里是相对路径。
# tables = doc.tables # 获取文档中所有表格对象的列表
# print('表格数量',len(tables))
# print('------------------------') 读取所有表格内容
# # for t in tables:
# # print(t)
# # rows=t.rows#行数 obj
# # columns=t.columns#列数 obj
# # rows_length = len(t.rows) # 行数
# # columns_length = len(t.columns) # 列数
# # for r_num in range(rows_length):#行遍历
# # r_content = []
# # for r_cell in rows[r_num].cells:
# # r_content.append(r_cell.text)
# # print(r_content)
边栏推荐
- WebView injects Js code to realize large image adaptive screen click image preview details
- Adalvo acquires its first branded product, Onsolis
- 手写大根堆
- 【HCIP持续更新】IS-IS协议原理与配置
- The FFmpeg library is configured and used on win10 (libx264 is not configured)
- 数字化转型之支撑保障单元
- 26. Pipeline parameter substitution command xargs
- 微服务架构的核心关键点
- Fragment中嵌套ViewPager数据空白页异常问题分析
- 阻塞、非阻塞、多路复用、同步、异步、BIO、NIO、AIO 一锅端
猜你喜欢
The new features of ABP 6.0.0 - rc. 1
张朝阳对话俞敏洪:一边是手推物理公式,一边是古诗信手拈来
1小时直播招募令:行业大咖干货分享,企业报名开启丨量子位·视点
Intranet penetration tool ngrok usage tutorial
Too much volume... Tencent was asked on the side that the memory was full, what would happen?
在“Extend the Omniverse”比赛中构建用于 3D 世界的工具
WeChat side: what is consistent hashing, usage scenarios, and what problems does it solve?
GPT-3组合DALL·E,60秒内搞定游戏设定和原型动画!网友看后:这游戏想玩
两个链表相加
金融业“限薪令”出台/ 软银出售过半阿里持仓/ DeepMind新实验室成立... 今日更多新鲜事在此...
随机推荐
ABP 6.0.0-rc.1的新特性
MySQL5.6到8.0的账号迁移
标准C语言学习总结14
WeChat side: what is consistent hashing, usage scenarios, and what problems does it solve?
罗振宇折戟创业板/ B站回应HR称用户是Loser/ 腾讯罗技年内合推云游戏掌机...今日更多新鲜事在此...
金融业“限薪令”出台/ 软银出售过半阿里持仓/ DeepMind新实验室成立... 今日更多新鲜事在此...
About the handling of variable parameters in the Retrofit network request URL
注释、关键字、标识符的区别你知道吗?
在北极都可以穿短袖了,温度飙升至32.5℃
在“Extend the Omniverse”比赛中构建用于 3D 世界的工具
Nature:猪死亡1小时后,器官再次运转
ansible-cmdb friendly display ansible collects host information
内网穿透工具ngrok使用教程
读写分离后,性能居然提升100%了呀
FFmpeg在win10上编译安装(配置libx264)
一甲子,正青春,CCF创建六十周年庆典在苏州举行
两分钟录音就可秒变语言通!火山语音音色复刻技术如何修炼而成?
放下手机吧:实验表明花20分钟思考和上网冲浪同样快乐
脱光衣服待着就能减肥,当真有这好事?
MongoDB-查询中$all的用法介绍