BS4:区分大小写的搜索

时间:2014-08-03 16:26:11

标签: python beautifulsoup case-sensitive

是否可以只查找大写格式的标签?我有一个HTML页面。有标签&lt; a href=..>和标签<A href=...>。我想只获得<A href=..>格式的标签。

当我尝试all = index.findAll('A')时,它什么也没有返回。 如果我尝试all = index.findAll('a'),我会收到所有标签&#39; a&#39;和&#39; A&#39;同样。

感谢您的建议。

1 个答案:

答案 0 :(得分:1)

HTML不区分大小写;在解析所有标签时小写

如果需要匹配区分大小写的标记,则需要将文档解析为XML。安装lxml并告诉BeautifulSoup在XML模式下使用该解析器:

soup = BeautifulSoup(source, 'xml')

请注意,XML比HTML更严格;解析不遵守这些更严格规则的HTML文档可能会失败。