如何通过Excel或Power BI按年份参数获取Moneycontrol网站股息收益率数据
需求实现方案说明
你提到的按年份动态抓取指定区间股息收益率数据的需求,完全可以在Excel和Power BI中实现,两类工具均自带支持参数化网页抓取的Power Query能力,具体实现思路如下:
Excel 实现步骤
- 先在Excel工作表中预留一个单元格作为年份输入参数,也可以创建一个年份序列表存储需要查询的多个年份
- 依次点击「数据」选项卡-「获取和转换数据」-「自网站」,先手动输入目标站点对应年份的URL完成首次数据抓取,提取页面中的股息表格数据
- 打开Power Query高级编辑器,将请求URL中的
sel_year=年份值部分的固定值替换为你提前定义的单元格参数引用;如果需要查询多年数据,直接配置Power Query遍历你提前准备的年份列表,自动循环请求对应年份的页面,合并所有返回的表格数据即可 - 加载回Excel的数据可直接通过筛选功能按年份、公司名称筛选所需的股息收益率数据
Power BI 实现步骤
- 操作逻辑和Excel端基本一致,进入Power Query编辑器后完成首次页面数据抓取,再将URL中的年份参数改为动态参数
- 支持直接创建可视化的年份切片器,用户在报告页点选需要查询的年份区间后,后台会自动请求对应年份的数据并完成更新,你还可以将股息数据和其他财务数据关联建模,生成自定义分析报表
注意:抓取数据时建议给请求设置1-2秒的间隔,避免高频请求触发网站反爬机制导致抓取失败;如果网站页面结构发生调整,重新配置Power Query的表格提取规则即可恢复抓取。
内容的提问来源于stack exchange,提问作者user17295743
相关产品推荐
相关产品推荐

