处理Beautifulsoup中的“类”属性

问题:

我在使用“Beautifulsoup”使用“class”属性解析html元素时遇到麻烦。代码看起来像这样

soup = BeautifulSoup(sdata)
mydivs = soup.findAll('div')
for div in mydivs: 
    if (div["class"]=="stylelistrow"):
        print div

脚本完成后,“同一行”发生错误。

File "./beautifulcoding.py", line 130, in getlanguage
  if (div["class"]=="stylelistrow"):
File "/usr/local/lib/python2.6/dist-packages/BeautifulSoup.py", line 599, in __getitem__
   return self._getAttrMap()[key]
KeyError: 'class'

如何摆脱这个错误?

回答:

您可以细化搜索,只能使用BS3找到具有给定类的div:

mydivs = soup.findAll("div", { "class" : "stylelistrow" })

 
 
Code问答: http://codewenda.com/topics/python/
Stackoverflow: Handling “class” attribute in Beautifulsoup

*转载请注明本文链接以及stackoverflow的英文链接

发表评论

电子邮件地址不会被公开。 必填项已用*标注

6 + 1 =