我的Python心路历程 第十二期 (12.1 基金实战可视化之基金指数数据获取)

背景

今天我的Python心路历程是 基金实战可视化之指数数据获取和存储。

分析

前面针对股票做了一些实践练习,今天开始实践一下基金方面,首先了解到天天基金网大家用的比较多,故此就从天天基金网获取相关数据的心得输出。

难点是如何快捷方便的批量获取URL。

方案

下面以指数数据获取和存储为例展开练习,从天天基金网爬数据的代码如下:

# 基金数据获取并存储为js文件的打样
def get2js():
    # 通过人工访问浏览器进入开发者模式查看该地址
    url = "http://fund.eastmoney.com/pingzhongdata/519671.js?v=20210124223803"
    content = requests.get(url)

    # 获取绝对路径,data为当前文件夹
    curpath = os.path.join(os.path.dirname(__file__), 'funddata')
    fileName = '519671content.js'
    file_object_path = os.path.join(curpath, fileName)

    f = open(file_object_path, 'w', encoding='utf-8')
    f.write(content.text)
    f.close()

    return

效果

js文件内容截图如下:
在这里插入图片描述

注意事项

需要重点关注的是查找对应基金代码对应数据内容的js文件链接地址。

以天天基金网为例,通过浏览器的开发者功能来获取。

  1. 进入天天基金网,输入指定代码,如“519671”。

  2. F12进入开发者模式,各浏览器略有差异,此处以谷歌为例。
    获取url地址的方法:Network----->JS----->Name列找到“519671.js…”----->Headers----->General----->Request URL,复制ulr即可。
    截图如下:
    在这里插入图片描述

  3. 数据量大的话会比较慢,等待一会会有很多name,找到类似于“519671.js?v=20210124223803”的名字,参数v会根据日期变化(参数v)。

  4. 拼链接:“http://fund.eastmoney.com/pingzhongdata/”+上面获取的name一起。如“url = “http://fund.eastmoney.com/pingzhongdata/519671.js?v=20210124223803””

  5. 参考如上代码获取数据并保存为js文件,供后续离线分析之用。

备注:
1)后续就可以直接读取该文件来进行数据分析,避免每次都获取重复数据。
2)其它扩展功能可以见参考连接。
3)后续遇到其它差异化问题的解决方案再做另行介绍。
4)仅限学术交流用途

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值