Python Beautifulsoup4删除<;span>;标签

Python Beautifulsoup4删除<;span>;标签,python,tags,beautifulsoup,html,Python,Tags,Beautifulsoup,Html,我正在使用此行从网站上抓取信息 offers=soup.find_all(“span”、“rcnt”) 这给了我这个结果: [8.668] 由于某种原因,当我试图打开它时,它给了我这个 [] 而不是8.668 如何正确地对其进行编码使用.string或.renderContents()获取值 htmls = '<span class="rcnt">8.668</span>' soup = BeautifulSoup(htmls) offers = soup.find_a

我正在使用此行从网站上抓取信息
offers=soup.find_all(“span”、“rcnt”)

这给了我这个结果:
[8.668]

由于某种原因,当我试图打开它时,它给了我这个
[]

而不是
8.668


如何正确地对其进行编码

使用
.string
.renderContents()
获取值

htmls = '<span class="rcnt">8.668</span>'
soup = BeautifulSoup(htmls)
offers =  soup.find_all("span", "rcnt")

print offers[0].string           ## this one is better
print offers[0].renderContents()
htmls='8.668'
汤=美汤(htmls)
优惠=汤。全部查找(“span”、“rcnt”)
打印提供[0]。字符串##这一个更好
打印提供[0]。渲染内容()

从您的描述中不清楚您使用什么代码来获取(展开)内容。这就是你要做的

提供
是一个列表。要获取跨度元素中的内容,请执行以下操作:

elements = [tag.text for tag in offers]
元素
将包含HTML中所有span标记的内容

>>> html = '<span class="rcnt">8.668</span><span class="rcnt">5.7868</span>'
>>> soup = BeautifulSoup(html)
>>> offers =  soup.find_all("span", "rcnt")
>>> elements = [tag.text for tag in offers]
>>> elements
[u'8.668', u'5.7868']
html='8.6685.7868' >>>soup=BeautifulSoup(html) >>>优惠=汤。全部查找(“span”、“rcnt”) >>>elements=[tag.text用于报价中的标记] >>>元素 [u'8.668',u'5.7868'] 只需使用.string()检索任何html标记中的值即可

html = '<span class="rcnt">8.668</span>'
soup = BeautifulSoup(html)
offers = soup.('span',attrs={"class":"rcnt"})
for i in range(0,len(offers)):
 print offers[i]