我在做什么:我正在编写一个网页提取器来收集天气数据。这是我到目前为止所做的:
import urllib.request
from bs4 import BeautifulSoup
# open the webpage and assign the content to a new variable
base = urllib.request.urlopen('http://www.weather.com/weather/today/Beijing+CHXX0008:1:CH')
f = base.readlines()
f = str(f)
soup = BeautifulSoup(f)
rn_base = soup.find_all(itemprop="temperature-fahrenheit")
如果你print
是变量rn_base
,你会得到:[<span class="wx-value" itemprop="temperature-fahrenheit">75</span>]
,我认为这是一个只有一个元素的列表。数字75
是我的目标。
问:我尝试了几种方法来获取号码,但都失败了。它们是,即 1) 用于str.join()
转换rn_base
为字符串,但由于rn_base
是ResultSet
对象而失败;2)使用索引切片,但是因为它不是字符串主题,所以失败了。3)按照beautifulsoup文档中的说明使用get_text()
,但是得到了AttributeError: 'ResultSet' object has no attribute 'get_text'
。
任何帮助是极大的赞赏!