刚开始学习Python和Beautiful Soup所以请温柔。我一直在努力解决的一个问题是,在抓取时我只能使用以下代码获得一个回报:
import bs4
from urllib.request import urlopen as uReq
from bs4 import BeautifulSoup as soup
my_url = 'https://www.dailyfaceoff.com/teams/pittsburgh-penguins/line-combinations/'
uClient = uReq(my_url)
page_html = uClient.read()
uClient.close()
page_soup = soup(page_html,"html.parser")
containers = page_soup.findAll("div",{"class":"team-line-combination-wrap"})
for container in containers:
name_container = container.findAll("span",{"class":"player-name"})
name = name_container[0].text
print(name)
只是不确定是什么导致了这种情况发生。当我检查 name_container 时,它包含我用 findAll 找到的所有结果,但是当循环开始时它只返回一个结果。非常感谢任何帮助/方向/指导。
您需要遍历所有内容,name_container
而不仅仅是containers
:
from urllib.request import urlopen as uReq
from bs4 import BeautifulSoup as soup
my_url = 'https://www.dailyfaceoff.com/teams/pittsburgh-penguins/line-combinations/'
uClient = uReq(my_url)
page_html = uClient.read()
uClient.close()
page_soup = soup(page_html,"html.parser")
data = page_soup.findAll("div",{"class":"team-line-combination-wrap"})
for container in data:
name_container = container.findAll("span",{"class":"player-name"})
for cont in name_container:
print(cont.text)
输出:
Jake Guentzel
Sidney Crosby
Bryan Rust
.
.
.
Matt Murray
Olli Maatta
Process finished with exit code 0
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句