我有一个 html 文件,我想使用 python在&标签<meta>
之间插入一个标签。如果我以模式打开文件,如何到达要插入标签的相关位置?<head>
</head>
append
<meta>
问问题
15236 次
2 回答
20
使用BeautifulSoup。这是一个示例,使用insert_after()meta
在标签之后插入一个标签:title
from bs4 import BeautifulSoup as Soup
html = """
<html>
<head>
<title>Test Page</title>
</head>
<body>
<div>test</div>
</html>
"""
soup = Soup(html)
title = soup.find('title')
meta = soup.new_tag('meta')
meta['content'] = "text/html; charset=UTF-8"
meta['http-equiv'] = "Content-Type"
title.insert_after(meta)
print soup
印刷:
<html>
<head>
<title>Test Page</title>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type"/>
</head>
<body>
<div>test</div>
</body>
</html>
您还可以找到head
标签并在指定位置使用insert() :
head = soup.find('head')
head.insert(1, meta)
另见:
于 2013-10-01T18:37:31.970 回答
0
您需要一个 xml 操作库,例如此处公开的Python 和 HTML 处理,您不能只打开文件并尝试附加它。
希望能帮助到你。
于 2013-10-01T18:39:06.593 回答