繁体   English   中英

Beautiful Soup WebScraping错误-ResultSet对象没有属性'%s'

[英]Beautiful Soup WebScraping Error - ResultSet object has no attribute '%s'

嘿,

我见过与此非常相似的问题,但是它们通常是在处理表。

我只是想从Harry Potter Wiki页面上抓取信息,但是当仅引用/尝试在html代码中查找标签时,它会弹出一个错误,指出ResultSet object has no attribute '%s' 这是我的代码(超级简单):

from urllib.request import urlopen as uReq
from bs4 import BeautifulSoup as soup

my_url = "http://harrypotter.wikia.com/wiki/Harry_Potter"

uClient = uReq(my_url)
page_html = uClient.read()
uClient.close()

page_soup = soup(page_html, "html.parser")

containers = page_soup.findAll("aside",{"class":"portable-infobox pi-background pi-theme-mom pi-layout-default"})

for container in containers:
    name_container = containers.find("h2", {"class":"pi-item pi-item-spacing pi-title"})

然后,这将导致错误说明:

"ResultSet object has no attribute '%s'. You're probably treating a list of items like a single item. Did you call find_all() when you meant to call find()?" % key
AttributeError: ResultSet object has no attribute 'find'. You're probably treating a list of items like a single item. Did you call find_all() when you meant to call find()?

这很奇怪,因为我已经在使用find()函数。

即使当我尝试通过containers直接引用特定标签(见下文)时,它仍然会给我同样的错误...而且这次我什至没有使用find()findAll()

for container in containers:
    name_container = containers.section.h2

再一次,这没有处理任何形式的表(我可以看到),因此对于为什么会创建此错误,我确实感到很困惑。 实际上,每当我尝试引用containers任何containers ,都会给我同样的错误。

任何帮助或建议,将不胜感激,谢谢。

用户堆栈在我的代码中发现了一个错字,应该一直引用容器而不是容器,如下所示:

name_container = container.find("h2", {"class":"pi-item pi-item-spacing pi-title"})

干杯, 堆栈

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM