Beautiful Soup:解決「ResultSet」屬性錯誤
嘗試使用Beautiful Soup 抓取表格結構時,可能會遇到錯誤:「 'ResultSet'物件沒有屬性'find_all'”。要解決此問題,了解 find_all 方法傳回結果的結構至關重要。
ResultSet 物件的本質
find_all 傳回符合元素的清單。在您的情況下,表包含一個元素的列表,即表本身。要檢索表格中的行,您需要在元素上呼叫find_all,而不是在ResultSet 物件上呼叫:
# Correct: Iterate over table body rows for row in table[0].find_all('tr'): ...
了解錯誤訊息
錯誤訊息「 'ResultSet' object has no attribute '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') ...
以上是Beautiful Soup \'ResultSet\' 錯誤:為什麼 `find_all` 在 ResultSet 物件上失敗?的詳細內容。更多資訊請關注PHP中文網其他相關文章!