【发布时间】:2015-04-14 13:27:29
【问题描述】:
我正在打开一个 docx 文件,我想在其中嵌入一个 csv 文件。
csv 应该显示为一个图标。
如何在我的 Word 文件中设置它的 ecaxt 位置?
到目前为止我的代码是:
from Tkinter import Tk
from tkFileDialog import askopenfilename
import csv
from docx import Document
import datetime
today = datetime.date.today()
Tk().withdraw() # we don't want a full GUI, so keep the root window from appearing
#filename = askopenfilename(title='Specify data csv file',filetypes=[('text files', '.csv')]) # show an "Open" dialog box and return the path to the selected file
filename='C:/Documents and Settings/K/My Documents/LiClipse Workspace/WO_templates/WO_templates/data.csv'
with open(filename, 'r') as csvfile:
data_csv = csv.reader(csvfile, delimiter=',')
for row in data_csv:
if row[3]<>'Name':
document = Document('2G_Template.docx')
for table in document.tables:
for _cell in table._cells:
for paragraph in _cell.paragraphs:
if '%DATE%' in paragraph.text:
paragraph.text=str(today.day)+'/'+str(today.month)+'/'+str(today.year)
if 'R%RR%' in paragraph.text:
paragraph.text='R'+row[0]
if '%DESC%' in paragraph.text:
paragraph.text=row[1]
for paragraph in document.paragraphs:
if '%DEL_PLAN%' in paragraph.text:
paragraph.text='Deletion PLan: '+row[2]
document.save(row[3]+'.docx')
每个循环的下一步应该是选择一个csv文件并将其嵌入到word文件中。这相当于 Word 中的粘贴特殊操作,选中了“显示为图标”选项。
【问题讨论】:
标签: python-2.7 csv insert python-docx