对于我正在做的事情,我想知道 docx-merge 是否可以写入目录单词模板。我基本上需要从导入的访问数据库中写入多行列表。我能够将一个测试行写成单一类型的单词合并模板。我在 https://pbpython.com/python-word-template.html?fbclid=IwAR2zGuejsyKhYLzXVCPi_kw-udlva_NN2Dbff0UC-UPEy5UmR8Iqx54yI1A找到了这个
没有关于列表类型文档的内容。现在,我只是将它们写到一个看起来像这样的文本文件中。ID 和年份,以及参考和超链接从新行开始,单独的项目之间有一个空白行。对此的任何帮助将不胜感激。我对其他一些应用程序有很多想法,我将分享我的发现。(每个人也应该尝试马黛茶“茶”和康普茶。)
1 2020 Howard, CM, Hu, R. 和 Falconer, J. (2020)。分享故事:教授识字身份和信仰的反思。网络:教师研究在线期刊,22(3)。# https://doi.org/10.4148/2470-6353.13177#
2 2014 年万豪,CE(2014 年)。只是想知道:调查的开始。知识探索,43(2),74-76。
3 2018 年理查兹-巴斯,S.(2018 年)。结合批判性思维:诊断成像教育中的教学策略。论文和论文@ Northcentral University - ProQuest
`
稍后添加 - 我让它工作 - 它并不完美,代码很古怪,但它现在可以工作!希望这可以帮助任何试图做类似事情的人。
这是我添加的代码:
for i in merge_lst:
#print(cnt)
cnt += 1
if len(i) > 0:
temp_val = i.split("!####!")
#print(temp_val)
id_str = temp_val[0]
year_str = temp_val[1]
r_str = temp_val[2]
h_str = temp_val[3]
#additional work on r_str
r_str = func_remove_char(r_str,"!#@@@@@#!")
temp_str = "'ID': '{}', 'Year': '{}', 'Reference': '{}', 'hyperlink': '{}'"
new_str = temp_str.format(id_str, year_str, r_str, h_str)
temp_str = "row_{} = !xx!{}!xxx!"
merge_str = temp_str.format(cnt-1,new_str)
new_str = merge_str.replace("!xx!","{")
merge_str = new_str
new_str = merge_str.replace("!xxx!","}")
exec(new_str)
print(new_str)
if cnt <= 2:
template_list = new_str
tlist = "row_1"
else:
template_list = template_list + new_str
temp_str = "row_{}"
temp_str = temp_str.format(cnt-1)
tlist = tlist + ", " + temp_str
#print(tlist) # row_1, row_2, row_3
template = ("H:\\new test template.docx")
document = MailMerge(template)
temp_str = "document.merge_templates([{}],separator='textWrapping_break')"
merge_str = temp_str.format(tlist)
print(merge_str)
exec(merge_str)
filename = "h:\\nt_template.docx"
document.write(filename)
这是它在 word 中的外观 - 有一个“page_break”将它们分成不同的页面,但我只需要一个空白行,所以我会尝试看看是否有这样的设置,但现在就可以了。