我想通过这样的网页解析和收集只首发的名字:美丽的汤战略拆分数据
http://espn.go.com/nba/boxscore?gameId=400827888
我的剧本抓起页面上所有的名字,但我不能区分时,在底部(在这种情况下,亚特兰大)的球队首发球员开始,顶部球队(在这种情况下,底特律)的替补球员结束。真正的问题是,顶级球队的名单上可能会有11-15名球员,所以我不能按照我的理解分割一个数字。如上所述,这给了我活塞的前10个名字 - 而不是前五名活塞队,老鹰队的前5名。我想到的一个策略依赖于标识,但考虑到它们在HTML中编码的方式,这似乎非常棘手。
def parse_boxscore(url):
"""Gathers names of starters from both teams, stores in list"""
soup = make_soup(url)
starters = [td for td in soup.findAll("td", "name")]
return starters[0:5], starters[6:11]
任何人都可以想到一致的策略吗?我不太懂技术,所以为了简单起见,我会牺牲相对效率(我知道,我知道)...
顺便说一句,你只需要'首发= soup.findAll( “TD”, “姓名”)' –
你需要找到表格的html元素,然后*为每个表格*,建立一个玩家列表。正如所写,你直接搜索*任何*表 –
感谢您的这个建议! – BSHuniversity