我希望将HTML标记添加到从.txt文件中提取的文本中,然后将其保存为HTML。我试图找到一个特定单词的任何实例,然后用锚标记中的同一个单词替换它。
就像这样:
import dominate
from dominate.tags import *
item = 'item1'
text = ['here is item1 in a line of text', 'here is item2 in a line too']
doc = dominate.document()
with doc:
for i, line in enumerate(text):
if item in text[i]:
text[i].replace(item, a(item, href='/item1')) 上面的代码提供了一个错误:
TypeError:替换()参数2必须是str,而不是a。
我可以做到这一点:
print(doc.body)<body>
<p>here is item1 in a line of text</p>
<p>here is item2 in a line too</p>
</body>但我想要这个:
print(doc.body)<body>
<p>here is <a href='/item1'>item1</a> in a line of text</p>
<p>here is item2 in a line too</p>
</body>发布于 2020-05-20 16:03:38
achieve中没有replace()方法,但是这个解决方案适用于我想要实现的目标:
中
item = 'item1'
url = '/item1'
item_atag = '<a href={}>{}</a>'.format(url, item)。
text = ['here is item1 in a line of text', 'here is item2 in a line too']
from dominate import document
from dominate.tags import p
doc = document()
with doc.body:
for i, line in enumerate(text):
p(text[i])
html_string = str(doc.body) html_with_atag = html_string.replace(item, item_atag)最后,将新字符串写入文件:
with open('html_file.html', 'w') as f:
f.write(html_with_atag)https://stackoverflow.com/questions/60491777
复制相似问题