Python 美丽的汤属性错误:';非类型';对象没有属性';查找所有';即使网页的结构是相同的

Python 美丽的汤属性错误:';非类型';对象没有属性';查找所有';即使网页的结构是相同的,python,beautifulsoup,Python,Beautifulsoup,因此,我有一个网页刮板工作代码,并希望在另一个网站上使用它的结构是相同的 我的代码是: url = "https://efl.network/index/efl/LeaguePassingStats.html" page = requests.get(url) soup = BeautifulSoup(page.content, 'html.parser') tb = soup.find('table', class_='tablesorter') table_rows = tb.find_al

因此,我有一个网页刮板工作代码,并希望在另一个网站上使用它的结构是相同的

我的代码是:

url = "https://efl.network/index/efl/LeaguePassingStats.html"
page = requests.get(url)
soup = BeautifulSoup(page.content, 'html.parser')
tb = soup.find('table', class_='tablesorter')
table_rows = tb.find_all("tr")
但是如果我将
url
更改为

https://sim-football.com/indexes/DSFLS22/LeaguePassingStats.html

这给了我一个错误

table_rows = tb.find_all("tr")
AttributeError: 'NoneType' object has no attribute 'find_all'
然而,这两个网站的结构似乎相同。

此行不返回任何内容

tb = soup.find('table', class_='tablesorter')
这意味着,页面上没有类为“tablesorter”的表元素

此行不返回任何值

tb = soup.find('table', class_='tablesorter')

这意味着,页面上没有类为“tablesorter”的表元素

如果您打印出
page.content
您可以看到这是返回的HTML:
不可接受!不可接受 在此服务器上找不到请求资源的适当表示形式。此错误由Mod_Security生成。


因此,网站出于某种原因阻止了您的web刮取,并返回了此错误HTML,其中您要查找的
元素不存在,如果您打印出
页面,则会导致您的错误。内容
您可以看到返回的HTML:
不可接受!不可接受 在此服务器上找不到请求资源的适当表示形式。此错误由Mod_Security生成。

因此,该网站出于某种原因阻止了您的web刮取,并返回了此错误HTML,其中您要查找的
元素不存在,从而导致了您的错误