我正在从HTML表中抓取数据,一旦使用BeautifulSoup获得了HTML数据,就会从这些列中生成一个浮点列表。对于我的应用程序,我想比较成对的浮点数(例如list [0]与list [1],list [2]与list [3]等)。它运作良好,但是在有一个空单元格时会掉下来,因为我的计算随后变得不同步-例如list [n]与list [n + 2]进行比较。
这是我用来生成配对值列表的代码(这些值以字符串分数开头,我转换为浮点数):
amounts = table_body.find_all('td', attrs={'class': True})
amounts = [ele.text.strip('( )') for ele in amounts]
amounts = [float(fractions.Fraction(x))+1 for x in amounts]
amountspairs = [odds[x:x+2] for x in range(0, len(amounts), 2)]
所以我的问题是,当单元格为空时,如何获取值为0的值-我从其抓取的页面中的单元格为空,而在单元格中却有许多具有值的属性-在代码中我只是用
class = True
空单元格的HTML代码是<td>&nbsp; </ td>,所以我试图弄清楚如何使BeautifulSoup返回一个值而不是忽略它,或者是否有一种方法可以在单元格为空的情况下跳过该行。
非常感谢(初学者)
l = []
for i in soup.find_all('td'):
if i.text:
l.append(float(i.text))
else:
l.append(float(0))
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句