【问题标题】:Finding Top Level Tags With BeautifulSoup使用 BeautifulSoup 查找顶级标签
【发布时间】:2011-08-21 21:38:36
【问题描述】:

我正在看一些 BeautifulSoup。在这种情况下,我的树如下所示:

soup = "<table class="myTable"><tr>...</tr></table>"

当我调用以下命令时:

soup.findAll(attrs={'class':'myTable'})

当我希望返回顶级标签时,我没有返回任何东西。但如果我要搜索的标签不在顶层,如下所示:

soup = "<body><table class="myTable"><tr>...</tr></table></body>"

然后我确实找到了桌子。我想我错过了一些明显的东西。如果我不是,有没有办法找到包括顶级标签在内的所有内容?

【问题讨论】:

    标签: python beautifulsoup


    【解决方案1】:

    我无法重现该问题。我认为找到顶级标签应该可行:

    In [92]: import BeautifulSoup
    In [94]: soup=BeautifulSoup.BeautifulSoup('<table class="myTable"><tr>...</tr></table>')
    
    In [95]: soup.findAll(attrs={'class':'myTable'})
    Out[95]: [<table class="myTable"><tr>...</tr></table>]
    

    【讨论】:

    • 可能是因为我从其他地方得到 x 吗?我有一个来自我正在迭代的先前 findAll 的列表。该列表中的每个项目都是我正在使用这个特定的 findAll 的。
    • 也许使用print(tag.prettify())(或调试器)来检查标签的内容是否与您认为的一样。
    • 从来不知道为什么会这样。刚刚绕过它。嗯,谢谢你的帮助。
    猜你喜欢
    • 2016-10-21
    • 2013-12-17
    • 1970-01-01
    • 2012-11-04
    • 2020-12-04
    • 2016-03-12
    • 2013-09-18
    • 2014-11-08
    相关资源
    最近更新 更多