使用漂亮的汤刮数据时,网页的表结构问题

时间:2013-02-20 13:53:25

标签: python html python-2.7 beautifulsoup

我使用以下代码使用漂亮的汤从网页上的表格结构中抓取数据:

# -*- coding: cp1252 -*-
import csv
import urllib2
import sys
import urllib
import time
import mechanize
from bs4 import BeautifulSoup
from itertools import islice


page = urllib2.urlopen('http://www.t-mobile.de/tarifuebersicht-telefonieren-und-surfen/0,23786,25241-_,00.html#grp=0&dev=0').read()
soup = BeautifulSoup(page)
for row in soup('table', {'class' : 'wloCol5'}).tbody('tr'):
    tds = row['td']
    print tds

此代码给出了AttributeError: 'ResultSet' object has no attribute 'tbody'错误。我正在使用类似的代码用于另一个没有任何故障的网页。请告知此代码/网页结构可能导致此错误的问题。

1 个答案:

答案 0 :(得分:1)

调用soup('table', {...})找到更多的一个表,因此它返回一个类似列表的对象。

尝试类似:

for table in soup('table', {...}):
    for tr in table("tr"):
        ...