答案 0 :(得分:4)
这将完全符合您的要求。
HydroElectric
根据您提供的代码。看起来因为没有定义标题,谷歌不会发送您正在寻找的信息。因此,BeautifulSoup无法找到跨度,因为它实际上并不存在。试试这个,它对我有用:
from BeautifulSoup import BeautifulSoup
data='<span class="rating-count">TEXT I WANT</span>'
soup=BeautifulSoup(data)
t=soup.find('span',{'class':'rating-count'})
print t.text
结果:
pkg = "com.mavdev.focusoutfacebook"
url = "https://play.google.com/store/apps/details?id=" + pkg
opener = urllib2.build_opener()
opener.addheaders = [('User-agent', 'Mozilla/5.0')]
data = opener.open(url).read()
soup=BeautifulSoup(data)
t=soup.find('span',{'class':'rating-count'})
print t.text
答案 1 :(得分:2)
您收到此错误是因为您错误地输入了span类的内容。如果仔细查看您发布的图片,则表示该跨栏的类别为评分计数,而您已将 rating_count 键入BeautifulSoup。因此,它会查找 rating_count ,找不到它,然后返回NoneType
。
rating_count = soup.find("span",{'class':'rating-count'}).text
print rating_count
答案 2 :(得分:0)
您是否尝试从网页中的多个容器中获取内容?你能算一下span类:DOM中的rating-count,看看是否有其他元素使用相同的类名。这可能是因为具有相同类名的其他一些元素是EMPTY。如果是这样,您可以使用IF-ELSE将“null”分配给您的属性。