2010-07-30 39 views
0

好了,所以我可以在HTML页面这样正确地引用我的表:形式 - >表 - 使用连续的findAll> TR呼吁

form = soup.findAll('form')[1] 

table = form.findAll('table', width="79%") # returns 1 table, doing a print shows table with rows 

tr = table.findAll('tr') 

我得到一个错误:

ResultSet对象没有属性findAll。

为什么不能正常工作?我使用form.findAll的输出来获取表格,并且表格(使用打印)的确具有表格行等。

回答

3

与前面的问题一样,findAll返回一个列表。

所以,

table = form.findAll('table', width='79%')[0] 
tr = table.findAll(...) 

将提取的第一个。和以前一样,先检查一下你的清单不是空的。

+0

但我做了一个len(表),它是1?我想我仍然要做[0]好吧,我明白了。 – Blankman 2010-07-30 05:20:59

+0

对,len(表)只是给你的长度。一旦你知道它是> 0,然后提取索引元素([0]获取第一个)。 – ars 2010-07-30 05:24:13

+0

@Blankman:很酷。 :) – ars 2010-07-30 22:23:22