我当前无法理解以下错误:for i in table.find_all('tr'):
它引用了以下代码的第21行:
import pandas as pd
import requests
from bs4 import BeautifulSoup
url = 'https://www.dwd.de/DE/wetter/wetterundklima_vorort/hessen/offenbach/_node.html'
page = requests.get(url)
soup = BeautifulSoup(page.text, 'lxml')
soup
# obtain information from html tag <table>
table = soup.find('table', id='wetklitab')
table
# obtain information from html tag <tr>
headers = []
for i in table.find_all('tr'):
title = i.text
headers.append(title)
print(f"{title}")
这是for i in table.find_all('tr'):
,谁能解释一下这个错误,以及如何解决它?谢谢。
1条答案
按热度按时间kkih6yb81#
您的错误是因为
table
在soup.find
行之后是None
。您可以通过测试table is None
来确认这一点,它将为您提供True
。原因是您要查找的表实际上没有id。相反,它位于具有这样一个id的div
标记下。下面是代码的快速修复。