如何使用Python BeautifulSoup构建子树?

时间:2019-06-24 03:06:01

标签: python beautifulsoup

我正在尝试使用BeautifulSoup来撰写网页。

当我通过<!DOCTYPE html> <html> <head> <title>Page Title</title> <script> function abc() { alert("OnChange event called successfully."); } </script> </head> <body> <form action=""> <label for="title"><b>Title :</b></label> <input type="hidden" name="ttl" onchange="abc();" value=""><br> </form> </body> </html> 设置标签的内部内容时,它会自动转义字符串。我尚未找到一种技术,例如string方法/属性,在这种技术中BS不会自动转义所有内容。

html

很明显,BS比构建HTML更常用于抓取HTML –是否有一个通用的扩展库?

1 个答案:

答案 0 :(得分:1)

您应该尝试Jinja。然后,您可以像这样渲染模板:

from jinja2 import Template

t = Template('<div id="example">{{example_div}}</div>')
t.render(example_div='<div>example</div>')

结果:

'<div id="example"><div>example</div></div>'

当然,您也可以从文件中读取模板:

with open('template.html', 'r') as f:
    t = Template(f.read())