如何使用Beautiful Soup提取此HTML元素属性的值?

时间:2011-11-18 20:13:11

标签: python html screen-scraping beautifulsoup web-scraping

我正在开发一个小工具来抓取网页。我正在使用Beautiful Soup。我想从页面中获取类ID。 HTML代码如下所示:

<span class='class_id' id='New_line'></span>

我如何获得class_id

2 个答案:

答案 0 :(得分:4)

此答案指的是未提及beautifulsoup的问题的旧版本

您可以使用LXML并迭代所有元素,询问他们的&#34;类&#34;属性。 LXML是一个用于解析XML文档的库。

喜欢,例如:

from lxml import etree
root = etree.parse(filename).getroot()

for span in root.iterdescendants("span"):
    cls = span.attrib.get("class")

答案 1 :(得分:3)

以下示例可能对您有所帮助吗?

>>> from BeautifulSoup import BeautifulSoup as B
>>> s = B("<span class='class_id' id='New_line'></span>")
>>> s.span.attrs
[(u'class', u'class_id'), (u'id', u'New_line')]