1

我正在尝试用 BeautifulSoup 解析一个表,并发现当我浏览它时知道我正在查看的行和列是/会有所帮助的。现在我有这个:

for table in soup.find_all("table", {"class":"foo"}):
    r = 0
    for row in table.find_all('tr'):            
        cells = row.find_all("td")
        c = 0
        for cell in cells:
            print "row", r, "cell", c
            print cell.attr
            c += 1
        r +=1

这会输出一些有启发性的信息:

row 0 cell 0 
row 1 cell 0 
row 1 cell 1 
row 1 cell 2 
row 1 cell 3 
row 1 cell 4 
row 2 cell 0 
row 2 cell 1 
row 3 cell 0 
row 3 cell 1 

由于某种原因 row[1] 有很多额外的列。方便知道。我想知道的是......是否有一个内置变量可以报告我在列表中的位置。

4

1 回答 1

6

你在找enumerate吗?

for c,cell in enumerate(cells):
    ....
于 2012-11-14T01:52:38.317 回答