在哪里可以找到Python中所有可能的HTML标记的列表?

在哪里可以找到Python中所有可能的HTML标记的列表?,python,html,tags,Python,Html,Tags,Python中是否有列出所有HTML标记的标准模块 例如,我想做以下事情: if is_valid_html_tag('div'): print 'div is a valid tag' if is_not_valid_html_tag('boda'): print 'boda is not a valid tag' 为此,我需要Python中所有标记的列表。我想知道是否有人已经组装了它们,或者可能包含在xml或Python库中的其他html模块中 谢谢,Boda Cydo。我不

Python中是否有列出所有HTML标记的标准模块

例如,我想做以下事情:

if is_valid_html_tag('div'):
   print 'div is a valid tag'

if is_not_valid_html_tag('boda'):
   print 'boda is not a valid tag'
为此,我需要Python中所有标记的列表。我想知道是否有人已经组装了它们,或者可能包含在xml或Python库中的其他html模块中


谢谢,Boda Cydo。

我不知道是否有一个内置模块可以做到这一点。我建议找一个标签列表,然后写一个这样的函数

def is_valid_html_tag(tag_name):  
  tags=["a","abbr","acronym","address","area","b","base","bdo","big","blockquote","body","br","button","caption","cite","code","col","colgroup","dd","del","dfn","div","dl","DOCTYPE","dt","em","fieldset","form","h1","h2","h3","h4","h5","h6","head","html","hr","i","img","input","ins","kbd","label","legend","li","link","map","meta","noscript","object","ol","optgroup","option","p","param","pre","q","samp","script","select","small","span","strong","style","sub","sup","table","tbody","td","textarea","tfoot","th","thead","title","tr","tt","ul","var"]
  return tag_name in tags
我认为有效标记的列表取决于您的doctype。这些是我的。他们说这个列表是用于严格的XHTML的


也就是说,也许有更好的方法来完成你想做的事情。如果您想提供更多关于您的目标的详细信息,我相信这里的友好人士会很乐意提供帮助。

因为python有各种模块—smtp、xml等,所以问题是是否有类似htmltags的模块可以列出所有有效的html标记

当你搜索这个网站时,你没有发现任何这样的东西,是吗

当你在谷歌上搜索时,你发现了这个,对吗

那食谱怎么了?你为什么不在你的问题中提到它?您不喜欢它的哪些方面?

使用以下方法:


你需要这个做什么?它需要是Python吗?这有帮助吗:你是什么意思?给定文档中使用的所有HTML标记?您是想用python解析HTML文档,还是只需要一个有效HTML标记列表(与python无关)?您不应该查看W3C网站吗?这不是一个真正合理的python问题。HTML标记由W3C定义。你为什么给这个[Python]贴标签?谢谢你的回答。我将通过查找所有其他可能的标记来改进它。目标只是确定给定的字符串是否是有效的HTML标记。返回语句似乎比必要的更复杂。
返回标签中的标签名不是同样好吗?我还建议将
标记
设置为一个集合而不是一个列表,以提高查找速度。@Mark Dickinson说得好,这一部分很复杂,没有明显的原因。谢谢你提供的关于集合的提示,我对Python还相当陌生,以前从未使用过这种数据结构。我还建议只构建一次集合,而不是每次调用函数。为什么你认为他毫无疑问是在问这个问题之前通过谷歌找到了那个页面?@Code Duck:这不是一个真正的“假设”。这更像是一个“建议”。我先想到的。人们可以自己使用谷歌,阅读其中的内容并提出具体问题。这比“懒散的网络”方式要好,简单地向某某发送随机信息,并希望其他人会为你使用谷歌。@s.Lott:但你确实搜索了谷歌,为OP做了工作。OTOH我倾向于以“当你搜索[你的问题]时谷歌上出现了什么?”的精神对类似的问题发表评论
from html5lib.sanitizer import HTMLSanitizerMixin
print(HTMLSanitizerMixin.acceptable_elements)