python 读取word文件 并分别提取到excel入不同的列
时间: 2023-05-16 15:05:18 浏览: 195
可以使用Python的第三方库python-docx来读取Word文件,使用pandas库来将数据写入Excel文件。以下是一个示例代码:
```python
import docx
import pandas as pd
# 读取Word文件
doc = docx.Document('example.docx')
# 提取Word文件中的表格数据
table = doc.tables[0]
data = []
keys = None
for i, row in enumerate(table.rows):
text = (cell.text for cell in row.cells)
if i == 0:
keys = tuple(text)
continue
row_data = dict(zip(keys, text))
data.append(row_data)
# 将数据写入Excel文件
df = pd.DataFrame(data)
writer = pd.ExcelWriter('example.xlsx')
df.to_excel(writer, index=False)
writer.save()
```
这段代码将读取名为example.docx的Word文件中的第一个表格数据,并将其写入名为example.xlsx的Excel文件中。
相关问题
python 将word每行数据并分别提取并excel入不同的列
可以使用Python中的docx和openpyxl库来实现这个功能。首先,使用docx库读取word文档中的每一行数据,然后使用openpyxl库将数据分别写入到不同的列中。以下是示例代码:
```python
import docx
from openpyxl import Workbook
# 读取word文档
doc = docx.Document('example.docx')
# 创建Excel工作簿
wb = Workbook()
ws = wb.active
# 遍历word文档中的每一行数据
for para in doc.paragraphs:
# 将每一行数据按照空格分割成列表
data = para.text.split()
# 将数据写入到Excel工作表中的不同列
for i in range(len(data)):
ws.cell(row=i+1, column=len(ws[1])+1, value=data[i])
# 保存Excel工作簿
wb.save('example.xlsx')
```
这段代码可以将word文档中的每一行数据按照空格分割成列表,并将列表中的数据分别写入到Excel工作表中的不同列中。
要用Python 把 Word里面的数据提取到Excel。
可以使用 Python 中的 python-docx 和 openpyxl 库来读取 Word 文档中的数据并写入 Excel 文件中。下面是一个简单的代码示例:
```python
import docx
from openpyxl import Workbook
# 打开 Word 文件
doc = docx.Document('example.docx')
# 创建 Excel 文件和工作表
wb = Workbook()
ws = wb.active
# 遍历 Word 文档中的表格,并将数据写入 Excel 文件中
for table in doc.tables:
for i, row in enumerate(table.rows):
for j, cell in enumerate(row.cells):
ws.cell(row=i+1, column=j+1, value=cell.text)
# 保存 Excel 文件
wb.save('example.xlsx')
```
在上面的代码中,`docx.Document()` 函数用于打开 Word 文件,然后使用 `openpyxl.Workbook()` 函数创建新的 Excel 文件和工作表。遍历 Word 文档中的表格,将单元格的文本数据写入对应的 Excel 单元格中,最后使用 `wb.save()` 函数保存 Excel 文件。
注意,使用 python-docx 和 openpyxl 库需要先安装,可以使用以下命令进行安装:
```
pip install python-docx openpyxl
```
阅读全文