【发布时间】:2016-06-20 22:03:24
【问题描述】:
这是我试图获取数据的链接flipkart
以及代码部分:
<div class="toolbar-wrap line section">
<div class="ratings-reviews-wrap">
<div itemprop="aggregateRating" itemscope="" itemtype="http://schema.org/AggregateRating" class="ratings-reviews line omniture-field">
<div class="ratings">
<meta itemprop="ratingValue" content="1">
<div class="fk-stars" title="1 stars">
<span class="unfilled">★★★★★</span>
<span class="rating filled" style="width:20%">
★★★★★
</span>
</div>
<div class="count">
<span itemprop="ratingCount">2</span>
</div>
</div>
</div>
</div>
</div>
这里我必须从 title= 1 star 获取 1 颗星,从 <span itemprop="ratingCount">2</span> 获取 2 颗星
我试试下面的代码
x = link_soup.find_all("div",class_='fk-stars')[0].get('title')
print x, " product_star"
y = link_soup.find_all("span",itemprop="ratingCount")[0].string.strip()
print y
但它给了
IndexError: 列表索引超出范围
【问题讨论】:
-
你的代码适合我
-
这是我尝试喝汤的链接flipkart.com/kanika-women-s-nighty/p/…
-
对我也很好。是否涉及任何收藏?也许您正在遍历 div 列表?
-
flipkart.com/kanika-women-s-nighty/p/…的HTML中都不存在这些标签
-
@mhawke 我从那里复制。打开该链接并右键单击产品评级星 -> 检查元素然后你会得到
标签: python python-2.7 urllib2 bs4