Beautiful Soup: 'ResultSet' 属性エラーへの対処
Beautiful Soup を使用して表構造をスクレイピングしようとすると、エラーが発生する可能性があります。 : 「「ResultSet」オブジェクトには属性「find_all」がありません。」これを解決するには、find_all メソッドによって返される結果の構造を理解することが重要です。
ResultSet オブジェクトの性質
find_all は、一致する要素のリストを返します。あなたの場合、 table には 1 つの要素のリスト、つまりテーブル自体が含まれています。テーブル内の行を取得するには、ResultSet オブジェクトではなく要素に対して find_all を呼び出す必要があります。
# Correct: Iterate over table body rows for row in table[0].find_all('tr'): ...
エラー メッセージについて
エラー メッセージ「'ResultSet' オブジェクトには属性 'find_all' がありません」は、ResultSet オブジェクト自体に対して find_all を呼び出そうとしていることを示します。このオブジェクトはタグではなくタグのコレクションであるため、find_all 属性を持ちません。
解決策の例
提供されたコードに基づいて、修正されたバージョンは次のようになります:
... table = soup.find_all(class_='dataframe')[0] # Select the table element for row in table.find_all('tr'): col = row.find_all('td') ...
以上が美しいスープ \'ResultSet\' エラー: ResultSet オブジェクトで `find_all` が失敗するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。