我看到的问题非常相似,但他们通常会处理表格。
我只是想从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()
或{{1这次!
findAll()
再一次,这不是处理任何形式的表(我可以看到),所以我真的很难过为什么要创建这个错误。事实上,每当我尝试引用for container in containers:
name_container = containers.section.h2
中的任何内容时,它都会给我同样的错误。
任何帮助或建议将不胜感激, 感谢。