为了账号安全,请及时绑定邮箱和手机立即绑定

在Python中验证(X)HTML

在Python中验证(X)HTML

POPMUISE 2021-03-21 13:25:47
验证文档是否遵循某种版本的HTML(最好是我可以指定)的最佳方法是什么?我希望能够知道失败的发生位置,例如在基于Web的验证器中,但在本机Python应用程序中除外。
查看完整描述

3 回答

?
小唯快跑啊

TA贡献1863条经验 获得超2个赞

XHTML很简单,请使用lxml。


from lxml import etree

from StringIO import StringIO

etree.parse(StringIO(html), etree.HTMLParser(recover=False))

HTML更加困难,因为传统上对HTML人群的验证没有那么大的兴趣(通过验证器yikes运行StackOverflow本身)。最简单的解决方案是执行诸如nsgmls或OpenJade之类的外部应用程序,然后解析其输出。


查看完整回答
反对 回复 2021-03-22
?
拉丁的传说

TA贡献1789条经验 获得超8个赞

PyTidyLib是HTML Tidy的一个不错的python绑定。他们的例子:


from tidylib import tidy_document

document, errors = tidy_document('''<p>f&otilde;o <img src="bar.jpg">''',

    options={'numeric-entities':1})

print document

print errors

而且,它与旧的HTML Tidy和新的tidy-html5都兼容。


查看完整回答
反对 回复 2021-03-22
  • 3 回答
  • 0 关注
  • 157 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信