soup.find()在BeautifulSoup中给出了什么类型的输出?

时间:2015-04-05 21:50:38

标签: python-2.7 beautifulsoup typeerror

我正在查看Taylor Swift的歌曲“Blank Space”的链接。我试图仅隔离视图的数量。但我似乎无法将其用作数字。

这就是它的回报:

Taylor Swift - Blank Space - YouTube
[u'721,891,621']

这不是一个真正的数字,因为如果我添加1:

,我会收到此错误
print pizza[0].contents +1
TypeError: can only concatenate list (not "int") to list

这是代码。

from bs4 import BeautifulSoup
import urllib2

url="https://www.youtube.com/watch?v=e-ORhEE9VVg"
page=urllib2.urlopen(url)
soup = BeautifulSoup(page.read())
print unicode(soup.title.string)


pizza= soup.find_all("div",{"class","watch-view-count"})
print pizza[0].contents

1 个答案:

答案 0 :(得分:1)

pizza[0].contents是一个列表。它直接在您遇到的异常中说出来。检查type(pizza[0].contents)

可以验证这一点

如果您尝试使用列表的第一个元素,请像使用pizzapizza[0].contents[0]一样使用索引器。您可以通过选中type(pizza[0].contents[0])

来验证此元素的类型

如果您需要整数,则可以在之后进行适当的转换。 There are several methods to convert your text to an integer when it has commas for thousands separators.