爬天气'NoneType' object has no attribute 'get_text'
时间: 2023-11-26 13:02:37 浏览: 33
根据提供的引用[1],出现 'NoneType' object has no attribute 'get_text' 错误通常是因为 BeautifulSoup 对象没有找到对应的标签或属性。这可能是由于网页结构发生了变化或者代码中的错误导致的。解决此问题的方法是检查代码中的标签和属性是否正确,并确保它们存在于网页中。
以下是一个爬取天气信息的示例代码,可以帮助你了解如何使用 BeautifulSoup 库来解析网页并获取所需的信息:
```python
import requests
from bs4 import BeautifulSoup
# 发送请求并获取网页内容
url = 'https://www.tianqi.com/'
response = requests.get(url)
html = response.text
# 解析网页内容并获取所需信息
soup = BeautifulSoup(html, 'html.parser')
city = soup.find('div', class_='city').get_text()
temperature = soup.find('div', class_='temperature').get_text()
# 输出结果
print('城市:', city)
print('温度:', temperature)
```
在上面的代码中,我们首先使用 requests 库发送请求并获取网页内容,然后使用 BeautifulSoup 库解析网页内容并获取所需的信息。具体来说,我们使用 find() 方法查找包含城市和温度信息的 div 标签,并使用 get_text() 方法获取标签中的文本内容。最后,我们将结果打印到控制台上。