我正在尝试在Word文档中查找文本。我有xml一词,现在,我试图在这些标签中获取文本。
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
if($('div').is('#single')){
var buttonSingle = $("#single"),
buttonMulti = $("#multi"),
file;
}
if(buttonSingle){
new AjaxUpload(buttonSingle, {
action: '/admin/' + buttonSingle.data('url') + "?upload=1",
data: {name: buttonSingle.data('name')},
name: buttonSingle.data('name'),
onSubmit: function(file, ext){
if (! (ext && /^(jpg|png|jpeg|gif)$/i.test(ext))){
alert('Exception');
return false;
}
buttonSingle.closest('.file-upload').find('.overlay').css({'display':'block'});
},
onComplete: function(file, response){
$res = JSON.parse(response);
if($res['error']){
alert($res['error']);
buttonSingle.closest('.file-upload').find('.overlay').css({'display': 'none'});
return false;
}
setTimeout(function(){
buttonSingle.closest('.file-upload').find('.overlay').css({'display':'none'});
response = JSON.parse(response);
$('.' + buttonSingle.data('name')).html('<img src="/images/' + response.file + '" style="max-height: 150px;">');
}, 1000);
}
});
我专门在w:t标签之间看
<w:body>
<w:p w14:paraId="416D9DAB" w14:textId="77777777" w:rsidR="00947170" w:rsidRDefault="00947170" w:rsidP="00947170">
<w:pPr>
<w:pStyle w:val="Title"/>
</w:pPr>
<w:r>
<w:t>text here</w:t>
</w:r>
</w:p>
当我尝试查找与标记链接的属性时,我查看了this question,但我没有返回文本属性。
<w:t>text here</w:t>
我一直将word-xml标记的file_name = 'document.xml'
full_file = 'c:\\filepath'
dom = ET.parse(full_file)
root = dom.getroot()
for body in root:
if body.tag == '{http://schemas.openxmlformats.org/wordprocessingml/2006/main}body':
for paragraph in body:
if paragraph.tag == '{http://schemas.openxmlformats.org/wordprocessingml/2006/main}p':
for right_align in paragraph:
if right_align.tag == '{http://schemas.openxmlformats.org/wordprocessingml/2006/main}r':
for work_text in right_align:
if word_text.tag == '{http://schemas.openxmlformats.org/wordprocessingml/2006/main}t':
print(word_text.attrib)
部分称为{http://schemas.openxmlformats.org/wordprocessingml/2006/main},因为那是.tag返回我的东西。我很确定这是我的工作,并且到目前为止,它一直在起作用,尽管我很想知道正确的方法。这使我认为找不到属性的原因是因为这样做导致引用错误的标签。
输出:
<w:
不打印
print(word_text.get(text))
通常会打印{},有些文本会得到{'{{http://www.w3.org/XML/1998/namespace}} space':'preserve'}