Anaconda安装和使用 akshare获取股票数据
介绍
Anaconda是开源的Python包管理器。既是Python各种库的大礼包集合,特别是数据分析和科学计算方面的库都预装了,也是一个能创建虚拟机环境的工具。
我为什么安装
我安装它的原因不是科学计算,是因为我要用AkShare库获取数据,要求Python 3.6 及以上版本。我电脑Python 2.7.15,又不想升级,所以安装anaconda,用anaconda创建虚拟机环境,在虚拟机环境使用Python3.7,本地电脑保持原版本不变。
安装过程
下载地址www.anaconda.com选择download,

下载最新版本安装包Anaconda3-2020.02-Windows-x86_64.exe,


这里选择安装目录,将来创建的各个版本Python的环境文件也都放在这个目录的子目录下

这里我勾选了下面,没有勾选上面,开始安装

怎么用
打开
安装完成,在开始搜索ana会出现Anaconda prompt,我是以管理员身份运行的,不用管理员权限应该也没问题。

打开后窗口最前面的(base)表示你正处于Anaconda的基础环境,基础环境一般不真正使用,要根据自己具体项目需要建立自己的环境,否则这个工具的威力大打折扣了。
对比base环境的Python版本和正常命令行工具的Python版本,可以看到两者互不影响。
Ana窗口

普通cmd

修改channels
建立环境的时候要下载很多包,如果下载速度慢会导致下载timeout而终止,会报错,

解决办法是把channels设置为清华大学的镜像地址,在命令行依次执行下面命令。建议先设置下面的channels,然后创建你的第一个环境。
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro/
新建环境
建立自己环境的命令conda create -n ak_test python=3.7.6, ak_test是新建环境的名称,叫什么随意,3.7.6是我指定的版本,需要哪个版本就写哪个。




到这里说明创建ak_test环境完成,同时提示进入环境和离开环境的命令。
执行conda activate ak_test,看到(base)变成了(ak_test),说明已经进入了ak_test环境。

安装akshare
这步每个人都不一样,按需要安装自己要的库。科学计算类的库Anaconda是预装的,安装更简单。
我建立这个环境是要使用akshare,安装,报错time out


是国内网络问题,使用阿里云镜像进行安装,命令如下
pip install akshare -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host=mirrors.aliyun.com --upgrade


安装成功!
使用akshare
下面两个小例子展示akshare库的功能。
股票策略指数曲线
aksharetest.py
import akshare as ak
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = 'SimHei'
plt.rcParams['axes.unicode_minus'] = False
stock_df = ak.zdzk_fund_index(30, plot=False)
futures_df = ak.zdzk_fund_index(32, plot=False)
fig = plt.figure(111, figsize=(20, 10), dpi=300)
adjust_stock_df = stock_df["20150102":] / stock_df["20150102"] * 1000
adjust_stock_df.plot(linewidth=4)
adjust_futures_df = futures_df["20150102":] / futures_df["20150102"] * 1000
adjust_futures_df.plot(linewidth=4)
plt.title("index example")
plt.legend()
plt.show()

会画出图片

股票指数查询
aksharetest02.py
import akshare as ak
stock_df = ak.stock_zh_index_spot()
print(stock_df)

ak_test环境和base是隔离的
如果执行conda deactivate离开这个环境切换到(base)环境,可以看到找不到akshare模块,说明base和ak_test环境是隔离的。

自建环境像是新建了个虚拟机
下面是vmware的虚拟机文件目录和Anaconda的自建环境文件目录,是不是有点像


总结

Anaconda可以迅速建立一套Python的开发运行环境,环境和宿主机互不影响,所建不同环境之间也互不影响,少了很多Python和库版本上的牵绊。
它在包管理上的使用,本文没有涉及。如果需要的库是anaconda里面预装的库和包,过程比本文要简单,堪称一键装机。
Anaconda安装和使用 akshare获取股票数据的更多相关文章
- Python股票分析系列——系列介绍和获取股票数据.p1
本系列转载自youtuber sentdex博主的教程视频内容 https://www.youtube.com/watch?v=19yyasfGLhk&index=4&list=PLQ ...
- 实时获取股票数据,免费!——Python爬虫Sina Stock实战
更多精彩内容,欢迎关注公众号:数量技术宅,也可添加技术宅个人微信号:sljsz01,与我交流. 实时股票数据的重要性 对于四大可交易资产:股票.期货.期权.数字货币来说,期货.期权.数字货币,可以从交 ...
- R获取股票数据
R中好几个Pkg都提供了股票数据的在线下载方法,如果非得在其中找出一个最好的,那么quantmod当之无愧!举一个例子,譬如下载沪市大盘数据,代码可以是: library(quantmod)SSE & ...
- 一个采用python获取股票数据的开源库,相当全,及一些量化投资策略库
tushare: http://tushare.waditu.com/index.html 为什么是Python? 就跟javascript在web领域无可撼动的地位一样,Python也已经在金融量化 ...
- Python3获取股票行情数据(中国个股/中国指数/全球指数)
#!/usr/local/bin/python3 #coding=utf-8 #source http://www.cnblogs.com/txw1958/ import os, io, sys, r ...
- Python使用TuShare将股票数据保存到Oracle数据
TuShare是个获取股票数据的模块包,我们进行分析,需要将股票数据保存到本地,避免每次都从网上获取,由于本机装有ORCALE,以ORACLE为例介绍如何保存股票数据到本地. 一.大致思路:我们先获取 ...
- 腾迅股票数据接口 http/javascript
腾迅股票数据接口 http/javascript 分类: Finance Perl2012-12-21 23:48 31132人阅读 评论(3) 收藏 举报 之前使用了新浪的股票数据,由于新浪http ...
- 数据接口-免费版(股票数据API)
获取股票数据的源头主要有:数据超市.雅虎.新浪.Google.和讯.搜狐.ChinaStockWebService.东方财富客户端.证券之星.网易财经. 数据超市 2016年5月6日更新.根据最近频繁 ...
- 用Python爬取股票数据,绘制K线和均线并用机器学习预测股价(来自我出的书)
最近我出了一本书,<基于股票大数据分析的Python入门实战 视频教学版>,京东链接:https://item.jd.com/69241653952.html,在其中用股票范例讲述Pyth ...
随机推荐
- mysql排序的问题与获取第几高的分数的信息
1:先截图看效果 2:完整的SQl语句 SELECT * FROM studentscore; -- ------------------ SET @maxscore=(SELECT MAX(scor ...
- Python3实现zip分卷压缩
Python实现zip分卷压缩 使用 zipfile 库 查看 官方中文文档 利用 Python 压缩 ZIP 文件,我们第一反应是使用 zipfile 库,然而,它的官方文档中却明确标注" ...
- python中使用token模拟登录
背景:在接口测试中我们经常是需要一个登陆token,或者获取其他用到的参数来关联下一个接口用到的参数. Token的意义及用法 一.Token的来源: 当客户端多次向服务端请求数据时,服务端就需要多次 ...
- TNFE-Weekly[第七十二周已更新]
前端行业发展飞速,新技术如雨后春笋般快速出现,尤其是各种小程序陆续推出,相关的信息.文章也铺天盖地的遍布在各处,我们有时候会困惑,不知道哪些信息对于自己是有价值的,那么TNFE-腾讯新闻前端团队启动了 ...
- C语言知识点汇集
int main() {// int num; int value; = int num,value; '''同时定义多个变量的方法 但是切记只能是同种类型的''' 都是int 或double等其他类 ...
- Docker实战(2):主从库搭建
入门 基于Docker的Mysql主从复制搭建 首先安装docker 拉取mysql镜像:5.7版本 启动主从数据库容器 docker run -p 3339:3306 --name Maste -e ...
- windows下搭建ElasticSearch
1.官网下载ElasticSearch,需要java环境支持 地址:https://www.elastic.co/products/elasticsearch 2.下载后解压到目录 ...
- outh2
之前做天猫精灵对接,就碰到了outh鉴权,当时实现好之后没有细细缕,今天看了一个博主的介绍,贴一下 转载自http://www.ruanyifeng.com/blog/2014/05/oauth_2_ ...
- RXJAVA之变换操作
RXJAVA提供了以下变换操作,对Observable的消息进行变换操作: 1.window 定期将来自Observable的数据分拆成一些Observable窗口,然后发射这些窗口,而不是每次发射一 ...
- linux上部署springboot项目
1.安装jdk,请参考个人博客linux安装jdk 2.安装mysql,请参考个人博客 linux安装mysql 3.项目打包(使用idea) 打开项目,点击idea右边Maven Projects菜 ...