soup=bs(html) html2 = soup.prettify('utf-8', formatter='minimal')
prettify() 方法的第二个参数 formatter 到底有几个合法的取值呢?
prettify()
formatter
我们只知道有 minimal, 还有什么呢?我们都不知道.怎么找到这些参数的值呢?这是 python 最不好的一个地方,方法的说明里不写明白,使用者怎么寻找这些特定的取值呢?
minimal
在官方文档里面有完整的说明:
输出格式化程序
默认是formatter="minimal"。字符串只会被处理到足以确保 Beautiful Soup 生成有效的 HTML/XML
如果你传入 formatter="html",Beautiful Soup 会尽可能将 Unicode 字符转换为 HTML 实体
如果你传入 formatter=None,Beautiful Soup 根本不会修改输出中的字符串。这是最快的选项,但可能会导致 Beautiful Soup 生成无效的 HTML/XML
最后,如果您传入格式化程序的函数,Beautiful Soup 将为文档中的每个字符串和属性值调用该函数一次。你可以在这个功能中做任何你想做的事。
至于要找代码:
我回答过的问题:Python-QA
看代码...
HTML_FORMATTERS = { "html" : HTMLAwareEntitySubstitution.substitute_html, "minimal" : HTMLAwareEntitySubstitution.substitute_xml, None : None } XML_FORMATTERS = { "html" : EntitySubstitution.substitute_html, "minimal" : EntitySubstitution.substitute_xml, None : None }
可以见 https://imgur.com/gallery/VkNUv
不知道怎么显示不出来这个图片
在官方文档里面有完整的说明:
输出格式化程序
默认是formatter="minimal"。字符串只会被处理到足以确保 Beautiful Soup 生成有效的 HTML/XML
如果你传入 formatter="html",Beautiful Soup 会尽可能将 Unicode 字符转换为 HTML 实体
如果你传入 formatter=None,Beautiful Soup 根本不会修改输出中的字符串。这是最快的选项,但可能会导致 Beautiful Soup 生成无效的 HTML/XML
最后,如果您传入格式化程序的函数,Beautiful Soup 将为文档中的每个字符串和属性值调用该函数一次。你可以在这个功能中做任何你想做的事。
至于要找代码:
雷雷我回答过的问题:Python-QA
看代码...
可以见 https://imgur.com/gallery/VkNUv
不知道怎么显示不出来这个图片