在 Python 中验证 (X)HTML

2024-02-05

验证文档是否遵循某个 HTML 版本(最好是我可以指定)的最佳方法是什么?我希望能够知道失败发生在哪里,就像在基于 Web 的验证器中一样,但在本机 Python 应用程序中除外。


PyTidyLib http://countergram.github.io/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 整洁 http://tidy.sourceforge.net/新的 tidy-html5 http://www.html-tidy.org/.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Python 中验证 (X)HTML 的相关文章

随机推荐

  • 清理 Plone 文件存储中未使用的 blob

    有没有办法找到并删除 Plone 站点中未使用的 blob 存储空间 我正在寻找类似的东西bin zeopack 但这会检测到未使用的斑点blobstorage目录 ZODB 自行处理未使用的 blob 打包将根据需要删除 blob 以及删
  • Spring Security自定义过滤器被多次调用

    我有一个自定义的注销过滤器 调用了六次 我尝试访问该应用程序两次 输入用户名 密码并单击 登录 时两次 然后当我单击 注销 时再次尝试访问该应用程序两次 我究竟做错了什么 配置
  • 有没有可以可视化 crontab 条目的工具? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我在很多机器上都有 crontab 并且想查看什么时候启动的 并确保数据库服务器上的负载正常 有没有可以将 crontab 条目转换为 i
  • 对于使用 Java 8 流求和 List 真的有必要使用 mapToDouble() 吗?

    据我所知 求和的方法List
  • Sql 将两列合并为一个变量[重复]

    这个问题在这里已经有答案了 我有一个sql命令 SELECT A K1 AD CONTACTAD K1 SYD CONTACTSYD KR AD KURUM K2 AD SUPERVISORAD K2 SYD SUPERVISORSOYAD
  • 如何获取参数的字符串值来为哈希Javascript创建密钥[重复]

    这个问题在这里已经有答案了 如何获取 my param 作为字符串 以便我可以将其用作我要创建的对象中的键 var my function function my param var my hash my param foobar 您需要使
  • 带有扩展 SimpleCursorAdapter 的 nullPointerException

    我正在学习自定义提供程序和加载程序 作为一个简单的例子 我正在尝试实现一个GridView显示外部SD卡中存储的图片 尽管我读了很多 文档 SO 上的线程 Google 小组 论坛 但我无法让我的代码正常工作 我知道这个示例可能存在几个问题
  • Bootstrap中纵向和横向的不同网格布局

    我正在使用 Sencha 制作 Android 应用程序 我正在使用此布局在手机和平 板电脑中进行响应式布局 div class row div class col xs 6 col sm 3 col xs 6 col sm 4 div d
  • 使用 ASP.NET、NHibernate / Fluent NHibernate 实现最轻松的多租户

    我正在尝试在我拥有的使用 NHibernate 的 ASP NET MVC 应用程序中实现多租户 尽管我可以控制多租户数据库 我正在尝试找出使用 NHibernate 过滤数据库查询的最佳方法 我想知道是否有一种轻松的方法可以附加条件 例如
  • 我需要 C# 的位操作指南/参考材料 [重复]

    这个问题在这里已经有答案了 可能的重复 最常见的 C 位运算 https stackoverflow com questions 93744 most common c bitwise operations 我正在寻找 C 的位操作参考材料
  • Python从嵌套字典中提取最大值

    我有一个以下形式的嵌套字典 2015 01 01 time 8 capacity 5 2015 01 02 time 8 capacity 7 2015 01 03 time 8 capacity 8 etc 该词典是使用 dictread
  • 如何在 ASP.NET MVC 中使用 JQuery 调用控制器操作

    我已经阅读了一段时间 发现您可以使用以下方法调用控制器操作 ajax MyController MyAction function data alert data 这是否意味着我应该添加 MicrosoftMvcAjax js 或 Micr
  • 为什么对文字使用异或而不是反转(按位非)

    我遇到过这个CRC32代码 http www opensource apple com source xnu xnu 1456 1 26 bsd libkern crc32 c很好奇为什么作者会选择使用 crc crc 0U 代替 crc
  • Excel VBA / SQL 联盟

    我正在尝试将 2 个不同工作表中的 2 个单独的列连接起来 以创建一个更长的列 然后我可以从中使用 Vlookup 表1 A B C D E F G 表2 A B C D E F G 我想将sheet1中的B列和sheet2中的C列连接 联
  • SQL 单元测试存储过程

    我是 SQL 数据库的新手 但一直面临着测试我的数据库的问题 出于安全原因 任何查询或更新都是通过存储过程完成的 一位同行建议我使用存储过程来测试其他存储过程 对于对我的存储过程进行单元测试以确保它们正在执行它们应该执行的操作 这是一个好还
  • getAttribute() 和 getParameter() 之间的区别

    有什么区别getAttribute and getParameter 内的方法HttpServletRequest class getParameter 返回http请求参数 这些从客户端传递到服务器 例如http example com
  • 应用商店中的应用大小比上传的应用大小大 7 倍

    当我将 iOS 应用程序上传到应用程序商店时 ipa 大小为32 MB 现在我的应用程序上线了 现在我在应用程序商店上检查了我的应用程序大小 它显示237 MB在 iPhone 6 上 它显示252 MB当我在电脑上的浏览器中打开应用程序链
  • 如何在 SVN 中进行独占结帐?

    我正在寻找一种从 SVN 进行独家结帐的方法 有没有办法在检出文件时自动锁定文件 如果一个用户进行独占签出 然后另一个用户对同一文件进行签出 我如何向第二个用户生成某种通知或即时消息 表明该文件已锁定 您可以添加属性或自动属性svn nee
  • dplyr 计数变量的一个特定值的数量

    假设我有一个这样的数据集 id lt c 1 1 2 2 3 3 code lt c a b a a b b dat lt data frame id code I e id code 1 1 a 2 1 b 3 2 a 4 2 a 5 3
  • 在 Python 中验证 (X)HTML

    验证文档是否遵循某个 HTML 版本 最好是我可以指定 的最佳方法是什么 我希望能够知道失败发生在哪里 就像在基于 Web 的验证器中一样 但在本机 Python 应用程序中除外 PyTidyLib http countergram git