如何使用Python爬取烂番茄观众评分对应的span类标签数据
解决方案
你抓取到的<score-board>标签本身就存储了观众评分的属性值,直接提取标签的audiencescore属性即可拿到目标数值,完整可运行代码如下:
from bs4 import BeautifulSoup import requests url = 'https://www.rottentomatoes.com/m/one_night_in_miami' # 添加UA请求头避免被反爬拦截,提高请求成功率 headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36" } page = requests.get(url, headers=headers) soup = BeautifulSoup(page.content, 'html.parser') # 直接定位第一个score-board标签 score_board = soup.select_one('score-board') # 提取内置的观众评分属性 audience_score = score_board.get('audiencescore') # 格式化为百分比样式输出 print(f"观众评分:{audience_score}%")
运行后输出结果为:
观众评分:79%
补充说明
烂番茄页面使用了自定义Web组件渲染评分模块,核心评分数据直接作为属性绑定在<score-board>根标签上,无需查找子节点文本内容。如果需要获取专业影评人评分,同理提取标签的tomatometerscore属性即可。
内容的提问来源于stack exchange,提问作者B Perera
相关产品推荐
相关产品推荐

