如何用Python中Tushare包轻松完成股票筛选(详细流程操作)

 更新时间:2021年03月09日 09:35:49   作者:Richard.Z  
这篇文章主要介绍了如何用Python中Tushare包轻松完成股票筛选(详细流程操作),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

本文包括安装以及调用Tushare包的详细流程操作

一、Tushare简介

Tushare是Python中一个十分好用的免费调用股票数据的接口包。运用tushare可以很轻松的调取各种股票数据。

网址:https://tushare.pro/register?reg=427001

可以调取的数据包括但不仅限于:

源自tushare官网

源自tushare官网

二、安装tushare

Windows系统直接在terminal输入以下代码

pip install tushare

Mac在terminal输入

pip3 install tushare

需要注意的是,从tushare上获取的数据类型为Dataframe,所以为了调用和存储数据同样需要安装pandas包,安装方法同上。

三、调用tushare

为了使用tushare包抓取数据,我们同时需要调用tushare和pandas包。

import tushare as ts
from pandas import Dataframe

接着我们便需要在tushare官网上进行注册,然后在个人主页获取相当于自己的钥匙的token
网址:https://tushare.pro/register?reg=427001

在这里插入图片描述

拿到token之后,我们便可以在python中调用tushare包,格式如下:

ts.set_token('你的token')
pro = ts.pro_api()
stock_info = pro.stock_basic()#股票基本信息

之后在根据官网上给出的数据接口调用不同种类的数据。

需要注意的是,由于tushare采取的是积分制,所以有一些数据接口需要积累一定的积分才能调用,详细信息见官网上的说明。

四、代码分享

此处分享一下我编写的抓取所有股票一段时间内股东人数变化并将变化量并进行排序的代码:

from pandas import DataFrame
import tushare as ts
import time
ts.set_token('be3dddcd0ebf47cb8586afe0428666a1547ae0fc999682d245e8ee1c')
pro = ts.pro_api()
stock_info = pro.stock_basic()#获取所有股票的基本信息
#print(len(stock_info))
startdate: str = input('请输入起始时间,格式为20210304\n')
enddate: str = input('请输入结束时间\n')
code: str = input('请输入查询股票的代码,输入0则查询所有股票\n')
variation = {}
if code != '0':
  stockholder_num = pro.stk_holdernumber(ts_code=code,start_date=startdate,end_date=enddate)
  #print(stockholder_num)
  df=DataFrame(stockholder_num)
  df.to_excel('stockholder_num.xlsx')
else:
  for i in range(0,len(stock_info)):#遍历所有股票
    if i>0 and i % 100 == 0:
      time.sleep(60)#由于每分钟调用限制,每调用100次等60s
    code = stock_info.at[i,'ts_code']
    #print(code)
    stockholder_num = pro.stk_holdernumber(ts_code=code,start_date=startdate,end_date=enddate)
    #print(stockholder_num)
    try:#由于一段时间内不一定每只股票都公告了股东人数,所以有可能会报错
      later = stockholder_num.at[0,'holder_num']
      former = stockholder_num.at[len(stockholder_num)-1,'holder_num']
      change = later - former
    except:#如果没有公告股东人数则跳过这一支股票进入下一支
      continue
    #print(change)
    variation[stock_info.at[i,'ts_code']] = change#将股东人数变化量存入字典
    #print(i)

  rank = sorted(variation.items(), key = lambda kv:(kv[1], kv[0]), reverse=True)#给字典排序
  print(rank)
  df=DataFrame(rank)
  df.to_excel('stockholder_num.xlsx')#将数据存入Excel表中

到此这篇关于如何用Python中Tushare包轻松完成股票筛选(详细流程操作)的文章就介绍到这了,更多相关Python Tushare股票筛选内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 深入详解Python中dotted库的使用

    深入详解Python中dotted库的使用

    Python的dotted库提供了一种便捷的方式来处理嵌套字典和列表,允许通过点分隔的路径字符串来访问和设置嵌套结构中的数据,下面我们就来看看它的具体使用
    2019-04-04
  • Python+Tkinter实现RGB数值转换为16进制码

    Python+Tkinter实现RGB数值转换为16进制码

    这篇文章主要为大家详细介绍了Python如何利用Tkinter编写一个RGB数值转换为16进制码的小工具,文中的示例代讲解详细,感兴趣的小伙伴可以了解一下
    2023-01-01
  • Flask学习笔记之日志操作配置实例讲解

    Flask学习笔记之日志操作配置实例讲解

    这篇文章主要为大家介绍了Flask学习笔记之日志操作配置实例讲解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-11-11
  • Python自动连接SSH的实现步骤

    Python自动连接SSH的实现步骤

    本文主要介绍了Python自动连接SSH的实现步骤,可以使用paramiko模块来编写脚本自动执行SSH命令,具有一定的参考价值,感兴趣的可以了解一下
    2024-03-03
  • 利用python pywifi实现破解WiFi密码

    利用python pywifi实现破解WiFi密码

    家里没有怎么办,只要你会Python,办法总比困难多,本文就利用pywifi 这个库实验一下如何破解Wi-Fi 密码,注意,该方法仅可用来研究学习所用,需要的朋友可以参考下
    2024-03-03
  • Python数据分析之pandas函数详解

    Python数据分析之pandas函数详解

    这篇文章主要介绍了Python数据分析之pandas函数详解,文中有非常详细的代码示例,对正在学习python的pandas函数的小伙伴们有很好地帮助,需要的朋友可以参考下
    2021-04-04
  • Pycharm远程调试openstack的方法

    Pycharm远程调试openstack的方法

    这篇文章主要为大家详细介绍了Pycharm远程调试openstack的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-11-11
  • python算法练习之抓交通肇事犯

    python算法练习之抓交通肇事犯

    这篇文章主要该大家分享python算法抓交通肇事犯得练习,文章主要通过描述抓交通肇事犯得问题然后确定程序框架将结果运算出来,下面来看详细内容吧,需要的朋友可以参考一下哟
    2021-10-10
  • python通过opencv实现批量剪切图片

    python通过opencv实现批量剪切图片

    这篇文章主要介绍了python通过opencv实现批量剪切图片,还是挺不错的,这里分享个大家,供需要的朋友参考。
    2017-11-11
  • Python3实现的腾讯微博自动发帖小工具

    Python3实现的腾讯微博自动发帖小工具

    这篇文章主要为大家分享下腾讯微博自动发帖的Python3代码,需要的朋友可以参考下
    2013-11-11

最新评论