我正在尝试抓取网站,但不断收到AttributeError: 'NoneType' object has no attribute 'text'
错误。任何帮助将不胜感激。
from urllib.request import urlopen
from bs4 import BeautifulSoup
html = 'https://www.bloomberg.com/quote/SPX:IND'
page = urlopen(html)
data = BeautifulSoup(page, 'html.parser')
name_box = data.find('h1', attrs={'class': 'companyName__99a4824b'})
name = name_box.text.strip()
print(name)
如果您查看请求的输出(通过print(data)
(,您可以看到您的请求被他们的机器人过滤器捕获。
参见:这里
您的name_box是 None 因此问题在于找到行中的 h1:
name_box = data.find('h1', attrs={'class': 'companyName__99a4824b'})
也许类不正确