2016-11-07 19 views
0

beautifulsoupを使用してウェブサイトからテーブルを解析しようとしています。 (私はウェブサイトのソースコードを制限付きのものとして共有できません)。複数のタグを持つBeautifulSoup、特定のクラスを持つ各タグ

これらの特定のクラスで次の2つのタグがある場合にのみ、データを抽出しようとしています。

td, width=40% 
tr, valign=top 

これは、これらのタグとクラスの両方を持つデータを抽出するためです。

複数のタグの使用に関する議論がありましたが、hereというタグについてのみ説明しますが、クラスについては説明しません。しかし、私はリストを使用して、同じロジックでコードを拡張しようとしましたが、私は何を私が手にすることは、私が欲しいものではないと思います。

my_soup=soup.find_all(['td',{"width":"40%"},'tr',{'valign':'top'}]) 

要約を、私のクエリは、それぞれ特定を持つ複数のタグを使用する方法ですfind_allのクラスでは、結果 'ands'が両方のタグになるようにします。

答えて

0

はのはbsObjはあなたの美しいスープオブジェクト てみているとしましょう:

tr = bsObj.findAll('tr', {'valign': 'top'}) 
td = tr.findAll('td', {'width': '40%'}) 

は、この情報がお役に立てば幸いです。

+0

私はそれが動作するとは思わないが、私は何かが不足している可能性があります。最初の行の出力はResultSetであり、2行目のResultSetでfind_allを実行しようとすると、ResultSetにfind_allメソッドがないことを示すエラーがスローされます。私はbs4を使用しています – PagMax

関連する問題