如何使用Python爬取基金数据,并可视化显示
本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理
以下文章来源于Will的大食堂,作者打饭大叔
前言
美国疫情越来越严峻,大选也进入了最后阶段,受之影响美股指数也在在下行中。最近的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()
下图就是我们利用爬取的数据画出的单位净值趋势图和累计净值趋势图。
现在我们理解了爬虫了原理,接口中也提供了大量的数据,后面就需要大家根据自己的需求发挥自己的想象,去实现更多丰富的功能,赶快动手试下吧!
特别提醒:投资有风险,入市需谨慎,本文不推荐任何基金或股票,文中所用基金仅供大家学习使用。
如何使用Python爬取基金数据,并可视化显示相关推荐
- 轻松入门Python爬取基金数据
美国疫情越来越严峻,大选也进入了最后阶段,受之影响美股指数也在在下行中.最近的A股也在跟随美股没有什么起色,一直在动荡整理之中.玩股票基金的同学们,最近大家的仓位控制的怎么样?为了更好的科学分析基金, ...
- Python爬取天气数据及可视化分析!
来源丨Python之王 Python爬取天气数据及可视化分析 说在前面 天气预报我们每天都会关注,我们可以根据未来的天气增减衣物.安排出行,每天的气温.风速风向.相对湿度.空气质量等成为关注的焦点.本 ...
- Python爬取天气数据及可视化分析
Python爬取天气数据及可视化分析 文章目录 Python爬取天气数据及可视化分析 说在前面 1.数据获取 请求网站链接 提取有用信息 保存csv文件 2.可视化分析 当天温度变化曲线图 当天相对湿 ...
- Python爬取基金数据案例
爬取基金数据案例 爬虫常规思路: 1.分析网页 2.对网页发送请求,获取响应 3.提取解析数据 4.保存数据 本案例所用到的模块: import requests import time import ...
- Python爬取天气数据及可视化分析(附源码)
大家好,我是辰哥(文末送书) 天气预报我们每天都会关注,我们可以根据未来的天气增减衣物.安排出行,每天的气温.风速风向.相对湿度.空气质量等成为关注的焦点.本次使用python中requests和Be ...
- 钱袋子往哪走?教你用Python爬取基金数据
年关将至,钱袋子往哪走? 有人买了定期存款,3年,年利率:3.987. 按存50w计算 0.0385 50万,3年息:6万,月息:1666.72元 0.039785 50万,3年息:6.21万,月息: ...
- 用Python爬取电影数据并可视化分析
- 用python爬取基金网信息数据,保存到表格,并做成四种简单可视化。(爬虫之路,永无止境!)
用python爬取基金网信息数据,保存到表格,并做成四种简单可视化.(爬虫之路,永无止境!) 上次 2021-07-07写的用python爬取腾讯招聘网岗位信息保存到表格,并做成简单可视化. 有的人留 ...
- python爬取网页公开数据_如何用Python爬取网页数据
使用Python爬取网页数据的方法: 一.利用webbrowser.open()打开一个网站:>>> import webbrowser >>> webbrowse ...
最新文章
- 游标对于分页存储过程
- 终于有人把 SpringBoot 项目的Http客户端工具说清楚了!
- 去掉字符串左右的空格
- 【面向对象】类的特殊成员方法
- POJ 1064 Cable master (二分答案,G++不过,C++就过了)
- rocksdb写放大_Rocksdb的优劣及应用场景分析
- C#json数据的序列化和反序列化(将数据转换为对象或对象集合)
- Mysql update 使用join更新字段
- readhat7mysql_Redhat7.3安装MySQL8.0.22的详细教程(二进制安装)
- uview框架u-form表单校验,rules校验对象中对象的值(解决 当form属性嵌套对象时未取到值的问题)
- 红米k30pro开发者选项
- cannot import name ‘mean_squared_erro‘ from ‘sklearn.metrics‘
- 在死亡边缘疯狂试探:“黑暗旅游”,你敢尝试吗?
- WINDOWS 7全系列验证码
- 今天才知道!华为手机摄像头可不止能拍照,它还能提高办公效率
- MVC发布出现:未能将文件bin\xxx.xml 复制到 obj\Release\PackageTmp\bin\xxx.xml,未能找到文件
- loadrunner入门篇 - Vuser发生器
- 带你玩转CSS浏览器兼容问题——囊括了目前我所有已知的兼容性问题
- 下拉框的二级联动和回显
- 2014年最新电脑公司系统下载
热门文章
- Python项目实战学习 外星人入侵 创建外星人飞船并实现外星人动态移动效果
- 理解用户模式和内核模式(译)
- 红黑树-介绍/性质/定理/基本操作/特点
- shell读文件时无法读入tab的问题
- JavaScript-iframe
- 操作必须使用一个可更新的查询。
- 师范生计算机软件技能怎么写,计算机与信息科学学院 软件学院第十三届 师范生课堂教学技能竞赛...
- 用fluent模拟内循环床气化燃烧(调试过程记录)
- 科大讯飞python
- python条形图颜色设置_在matplotlib Python中设置不同的条形图颜色