尝试清除此site上列出的玩家的所有玩家姓名和幻想信息。我可以找到绝对正常的表,但是当我尝试迭代整个表时,麻烦就开始了。这是我到目前为止编写的代码:
Adrian Peterson MIN, 5
Le'Veon Bell PIT, 11
预期输出:
Adrian Peterson MIN, 5
Adrian Peterson MIN, 5
Adrian Peterson MIN, 5
对于图表上的其他玩家来说等等等等。
实际输出:
for
以及超过400次迭代。
我的{{1}}循环在哪里出错了?
答案 0 :(得分:1)
您需要在特定表格的上下文中进行搜索:
for row in table:
print(row.find('td').find_next('td'))
尽管如此,我会以不同的方式解决问题。所需的表格有id
:
table = soup.find('table', id="data")
for row in table.find_all("tr")[1:]: # skipping header row
cells = row.find_all("td")
print(cells[0].text, cells[1].find('a').text)
打印:
(u'1', u'Adrian Peterson')
(u'2', u"Le'Veon Bell")
(u'3', u'Eddie Lacy')
(u'4', u'Jamaal Charles')
(u'5', u'Marshawn Lynch')
...