刮伤BeautifulSoup显示太多行

时间:2017-10-16 14:39:49

标签: python html css web-scraping beautifulsoup

提前感谢您的帮助!我是这个东西的初学者,所以任何帮助都表示赞赏。如果有一个有用的指南使用beautifulsoup来做到这一点,我会采取一个链接。无法使其发挥作用。

我想从图.pipWineryImage_map(38.417216 / -122.336862)下的href链接中搜索{0}来获取wineRatings_initials和wineRatings_rating,averageRating_average和averageRating_number,以及来自href链接的纬度/经度

这会带回wineRatings_initials的所有实例,甚至是div.prodPedigree下的那些我不需要的实例。 soup.find_all(“span”,{“class”:“wineRatings_initials”})

 import urllib2 from bs4 
 import BeautifulSoup wine_page = 'wine.com/product/shafer-red-shoulder-ranch-chardonnay-2014/‌​…; 
 page = urllib2.urlopen(wine_page) 
 soup = BeautifulSoup(page, 'html.parser') 
 soup.find_all(class_='wineRatings_initials') 

1 个答案:

答案 0 :(得分:0)

我对你的问题有点困惑,但如果我理解正确,你想从页面顶部获得平均葡萄酒评级,就像那里用红色圈出的那些。 average wine ratings

只要此列表始终是页面上的第一个列表,您就可以使用类似的内容来获取它们。

list_of_ratings = soup.find("ul", {"class", "wineRatings_list"})('span')

请注意,“find”方法只会获取它找到的第一个实例,因此需要将平均评级列表放在页面顶部。