美国疫情越来越严峻,大选也进入了最后阶段,受之影响美股指数也在在下行中。最近的A股也在跟随美股没有什么起色,一直在动荡整理之中。玩股票基金的同学们,最近大家的仓位控制的怎么样?为了更好的科学分析基金,今天将和大家一起学习如何使用Python爬取基金数据。

下面我们将一起学习爬取基金数据,在这之前我们先做一些准备工作,配置好我们的环境。这里需要用到几个Python库需要安装:

  • requests:它是一个HTTP 库,可方便的进行web访问;

    pip install requests
    
  • PyExecJs:它是一个js的执行库,后面我们将会了解到为什么需要这个库;
    pip install PyExecJs
    
  • matplotlib和numpy:这两个库用于图形化数据分析,大家可以根据《数字信号处理没有Matlab?用Python一样很爽》进行安装;
  • 其他:还需要其他库可根据自己需求进行安装。

根据上面的要求环境配置完成后,就可以进行数据爬取了。

天天基金网是国内知名的基金理财网站,日活用户比较高,有较为专业全面的基金数据,数据更新也较为及时。我们今天就使用Python爬取天天基金网上的数据。

天天基金网地址:https://fund.eastmoney.com

我们进入天天基金网,选取一款基金,我这里就选择银河沪深300价值指数(519671)作为例子。

那么问题来了,要爬取基金数据我们要找到数据在哪儿?

在我们选择的银河沪深300价值指数(519671)基金页面里,按F12打开调试窗口。

在调试窗口中选择Network选项,然后再F5重新载入页面,左侧Name栏将会有各种元素列出来,我们找到519671.js?v=20201026224444并选中,我们再右侧将会看到url地址,如下图。这个地址就是我们获取基金数据的接口。其中,519671是基金代码,20201026224444是当前时间。大家可以按照这个格式根据需要对这两个修改即可。

那么,我们需要爬取的数据是什么样的呢?可以选择Preview选项,如下图,我们就可以看到关于基金的详细数据。因为这里的数据是js格式的,因此我们就需要PyExecJs库解析这部分代码。

以上,我们知道了如何获取基金数据的地址和如何解析基金数据,下面我们就开始使用Python实践一下吧。


import requests
import execjs
import numpy as np
from matplotlib import pyplot as plturl = "http://fund.eastmoney.com/pingzhongdata/519671.js?v=20201026224444"
content = requests.get(url)jsContent = execjs.compile(content.text)
name = jsContent.eval('fS_name')
code = jsContent.eval('fS_code')#单位净值走势数据
netWorthTrendData = jsContent.eval('Data_netWorthTrend')
#累计净值走势数据
ACWorthTrendData = jsContent.eval('Data_ACWorthTrend')netWorthTrend = [v["y"] for v in netWorthTrendData]
ACWorthTrend = [v[1] for v in ACWorthTrendData]plt.figure()
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus'] = False#单位净值趋势图
plt.subplot(2,1,1)
plt.title(name + " ( " + code + " ) " + "单位净值")
plt.plot(netWorthTrend)#累计净值趋势图
plt.subplot(2,1,2)
plt.title(name + " ( " + code + " ) " + "累计净值")
plt.plot(ACWorthTrend)plt.show()

下图就是我们利用爬取的数据画出的单位净值趋势图和累计净值趋势图。

现在我们理解了爬虫了原理,接口中也提供了大量的数据,后面就需要大家根据自己的需求发挥自己的想象,去实现更多丰富的功能,赶快动手试下吧!

特别提醒:投资有风险,入市需谨慎,本文不推荐任何基金或股票,文中所用基金仅供大家学习使用。

感谢大家耐心的阅读,希望都有所收获,也欢迎大家关注微信公众号【Will的大食堂】,一起交流学习。

轻松入门Python爬取基金数据相关推荐

  1. 如何使用Python爬取基金数据,并可视化显示

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 以下文章来源于Will的大食堂,作者打饭大叔 前言 美国疫情越来越严峻,大选也进入 ...

  2. Python爬取基金数据案例

    爬取基金数据案例 爬虫常规思路: 1.分析网页 2.对网页发送请求,获取响应 3.提取解析数据 4.保存数据 本案例所用到的模块: import requests import time import ...

  3. 钱袋子往哪走?教你用Python爬取基金数据

    年关将至,钱袋子往哪走? 有人买了定期存款,3年,年利率:3.987. 按存50w计算 0.0385 50万,3年息:6万,月息:1666.72元 0.039785 50万,3年息:6.21万,月息: ...

  4. 一篇文章让你轻松学会python爬取的数据保存到MySQL中,有案例哦

    文章目录 pymysql 基本使用 八个步骤以及案例分析 一.导入pymysql模块 二.获取到database的链接对象 三.创建数据表的方法 四.获取执行sql语句的光标对象 五.定义要执行的sq ...

  5. 用python爬取基金网信息数据,保存到表格,并做成四种简单可视化。(爬虫之路,永无止境!)

    用python爬取基金网信息数据,保存到表格,并做成四种简单可视化.(爬虫之路,永无止境!) 上次 2021-07-07写的用python爬取腾讯招聘网岗位信息保存到表格,并做成简单可视化. 有的人留 ...

  6. 如何用python爬取网页数据,python爬取网页详细教程

    大家好,本文将围绕python怎么爬取网站所有网页展开说明,如何用python爬取网页数据是一个很多人都想弄明白的事情,想搞清楚python如何爬取网页数据需要先了解以下几个事情. 1.如何用Pyth ...

  7. Python小姿势 - Python爬取网页数据

    Python爬取网页数据 爬取网页数据是一个比较常见的Python应用场景,有很多第三方库可以帮助我们完成这个任务.这里我们介绍一下urllib库中的一个常用方法:urllib.request.url ...

  8. python爬取网页公开数据_如何用Python爬取网页数据

    使用Python爬取网页数据的方法: 一.利用webbrowser.open()打开一个网站:>>> import webbrowser >>> webbrowse ...

  9. 编程python爬取网页数据教程_实例讲解Python爬取网页数据

    一.利用webbrowser.open()打开一个网站: >>> import webbrowser >>> webbrowser.open('http://i.f ...

最新文章

  1. 【全网最精简】一行代码解决千万位以上的数字格式化为银行金额数字格式(如:¥1,000,000,000.00)
  2. Java通过JDBC连接MySQL数据库
  3. peleenet v2不好
  4. CPU寻址过程方框图
  5. 阿里云 EDAS 3.0 助力唱鸭提升微服务幸福感
  6. python元类的使用_python中元类用法实例
  7. 计算机图形学有序边表作业,《计算机图形学》有序边表填充算法.docx
  8. Luogu P2463 [SDOI2008]Sandy的卡片
  9. 图解从上电到执行main函数的处理
  10. linux压缩和解压缩命令大全
  11. Java 蓝桥杯 数列特征
  12. php inqude函数,Python匿名函数(lambda函数)
  13. C(每日一题)——数据结构——创建一个线性链表(详细过程)
  14. IT行业都有什么职位?
  15. 体验服和平精英服务器维护,和平精英:体验服申请入口
  16. 建站手册-网站构建:万维网联盟(World Wide Web Consortium)
  17. 显卡无法为此计算机,如何解决win10系统电脑中无法安装intel显卡驱动的问题
  18. CPU虚拟化技术及QEMU/KVM虚拟机安装实践
  19. laravel安装barryvdh/laravel-snappy 笔记
  20. 【数据库系统概论】基础知识总结

热门文章

  1. Jquery文本域(textarea)改变事件
  2. 从零开始的C++ opencv的人脸识别程序——第一个C++程序
  3. 2014年广东省六月展会集,看到就是赚到!!
  4. 【论文阅读笔记】Learning To Detect Unseen Object Classes by Between-Class Attribute Transfer
  5. 吴裕雄--天生自然 高等数学学习:数量积、向量积和混合积
  6. 2022年,灵活就业将是普通人抵抗风险的重要机会
  7. 数字地球与计算机技术联系,关于数字地球应用前景的正确说法是
  8. HTTP与HTTPS知识点
  9. ORBSLAM3中的MLPnP在重定位时计算当前帧和候选帧的位姿变换
  10. scada组态开源java_RapidScada免费开源Scada组态软件系列教程6-二次开发