Python使用requests库获取指定class属性页面元素的方法咨询
解决方法
requests库仅用于发送HTTP请求获取页面原始源码,本身不具备HTML DOM解析能力,你需要搭配HTML解析库完成元素提取,最常用的方案是搭配BeautifulSoup:
第一步:安装依赖库
pip install requests beautifulsoup4
第二步:完整实现代码
import requests from bs4 import BeautifulSoup # 发送请求获取页面源码 response = requests.get('https://sky.lea.moe/stats/TheKatDev') # 指定解析器初始化BeautifulSoup对象 soup = BeautifulSoup(response.text, 'html.parser') # 查找所有class为stat-value的元素 stat_value_elements = soup.find_all(class_="stat-value") # 遍历输出所有元素的文本内容 for element in stat_value_elements: print(element.get_text(strip=True)) # 若只需获取第一个匹配的元素,替换为find方法即可 # first_stat = soup.find(class_="stat-value") # print(first_stat.get_text())
注意:查找类名时使用
class_参数,是为了避免和Python内置的关键字class产生冲突。
动态渲染场景处理
如果运行上述代码没有获取到对应元素,说明stat-value节点是页面加载后通过JavaScript动态渲染生成的,requests请求拿到的静态源码中不存在对应内容,这种场景需要使用支持JS渲染的采集工具,比如Selenium、Playwright等。
内容的提问来源于stack exchange,提问作者TheKatDev
相关产品推荐
相关产品推荐

