我正在解析销售电子产品的网站.. 具体来说,我希望收集产品的名称和价格 在解析基于xml的站点时遇到了一个小问题....
这是我的代码:
>>> import urllib2
>>> from bs4 import BeautifulSoup
>>> url=urllib2.urlopen("http://store.explorelabs.com/index.php?main_page=products_all")
>>> soup=BeautifulSoup(url,"xml")
>>> data=soup.find_all(colspan="2")
上面的代码工作
现在我这样做(因为名字在强标签内)
>>> data.strong
或
>>> data.attrs
它告诉我这个:
Traceback (most recent call last):
File "<pyshell#10>", line 1, in <module>
data.strong
AttributeError: 'ResultSet' object has no attribute 'strong'
或
Traceback (most recent call last):
File "<pyshell#17>", line 1, in <module>
data.find_all('a')
AttributeError: 'ResultSet' object has no attribute 'find_all'
我正在尝试迭代并尝试了解更多信息 任何指针都会非常有用。
答案 0 :(得分:1)
find_all
返回匹配的元素列表,而不是一个。循环结果集以获取单个项目:
for element in data:
element.attrs