`
dbp_cn
  • 浏览: 85891 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

java调用tushare获取免费金融数据 http接口开发

    博客分类:
  • java
 
阅读更多

    Tushare是一个免费、开源的python财经数据接口包。主要实现对股票等金融数据从数据采集清洗加工 到 数据存储的过程,能够为金融分析人员提供快速、整洁、和多样的便于分析的数据,为他们在数据获取方面极大地减轻工作量,使他们更加专注于策略和模型的研究与实现上。

    最近tushare推出了tushare pro ,增加对HTTP RESTful API的支持,用户可以通过标准协议,获得想要的数据,这对于其他开发者也是福音,下面只要介绍通过java开发获取tushare金融数据的方法以及碰到的一些坑,通过http 接口调用方式具体参考https://tushare.pro/document/1?doc_id=130 ,主要是通过post方式调用,需要传如下参数:

 

api_name:接口名称,比如stock_basic

token :用户唯一标识,可通过登录pro网站获取

params:接口参数,如daily接口中start_date和end_date

fields:字段列表,用于接口获取指定的字段,以逗号分隔,如"open,high,low,close"

其中params参数,这个如果直接传字符串过去就会系统内部错误,需要通过Map对象在封装一层,我们通过httpClient接口调用回来后还需要解析,具体参考代码:

其中token需要申请注册账号

 

    public static void httpPostForStockList() {
        String url = "http://api.waditu.com";
        Map<String, Object> params = new HashMap<>(10);
        params.put("api_name", "stock_basic");
        ////token,需要申请,上面链接直达
        params.put("token", "*****************");
        //请求参数
        Map paramValue=new HashMap();
        paramValue.put("list_status","L");
        paramValue.put("exchange","SZSE");

        params.put("params", paramValue);
        params.put("fields", "ts_code,symbol,name,area,industry,fullname,enname,market,exchange,curr_type,list_status,list_date,delist_date,is_hs");
        String res = HttpClientUtils.callWebPagePost(url, JSON.toJSONString(params));

        System.out.println(res);
        Map result = (Map) JSON.parse(res);
        Map data = (Map) result.get("data");
        JSONArray arr = (JSONArray) data.get("fields");
        JSONArray dataArr = (JSONArray) data.get("items");
        for (int i = 0; i < dataArr.size(); i++) {
//			JSONObject obj=dataArr.getJSONObject(i);
            Object obj = dataArr.get(i);

            System.out.println(obj);
        }

    }
 这样我们就可以获取具体的明细数据。

 

["000001.SZ","000001","平安银行","深圳","银行","平安银行股份有限公司","Ping An Bank Co., Ltd.","主板","SZSE","CNY","L","19910403",null,"S"]
["000002.SZ","000002","万科A","深圳","全国地产","万科企业股份有限公司","China Vanke Co.,Ltd.","主板","SZSE","CNY","L","19910129",null,"S"]
["000004.SZ","000004","国农科技","深圳","生物制药","深圳中国农大科技股份有限公司","Shenzhen Cau Technology Co.,Ltd.","主板","SZSE","CNY","L","19910114",null,"N"]
["000005.SZ","000005","世纪星源","深圳","环境保护","深圳世纪星源股份有限公司","Shenzhen Fountain Corporation","主板","SZSE","CNY","L","19901210",null,"N"]
["000006.SZ","000006","深振业A","深圳","区域地产","深圳市振业(集团)股份有限公司","Shenzhen Zhenye(Group) Co.,Ltd.","主板","SZSE","CNY","L","19920427",null,"S"]
["000007.SZ","000007","全新好","深圳","酒店餐饮","深圳市全新好股份有限公司","Shenzhen Quanxinhao Co.,Ltd","主板","SZSE","CNY","L","19920413",null,"N"]
["000008.SZ","000008","神州高铁","北京","运输设备","神州高铁技术股份有限公司","China High Speed Railway Technology Co., Ltd.","主板","SZSE","CNY","L","19920507",null,"S"]
["000009.SZ","000009","中国宝安","深圳","综合类","中国宝安集团股份有限公司","China Baoan Group Co.,Ltd.","主板","SZSE","CNY","L","19910625",null,"S"]
["000010.SZ","000010","*ST美丽","深圳","建筑施工","深圳美丽生态股份有限公司","Shenzhen Ecobeauty Co.,Ltd.","主板","SZSE","CNY","L","19951027",null,"N"]
["000011.SZ","000011","深物业A","深圳","区域地产","深圳市物业发展(集团)股份有限公司","Shenzhen Properties & Resources Development (Group) Ltd.","主板","SZSE","CNY","L","19920330",null,"N"]
["000012.SZ","000012","南玻A","深圳","玻璃","中国南玻集团股份有限公司","CSG Holding Co.,Ltd.","主板","SZSE","CNY","L","19920228",null,"S"]

 

分享到:
评论

相关推荐

    tushare 使用说明及接口调用方法

    TuShare是一个免费、开源的python财经数据接口包。主要实现对股票等金融数据从数据采 集、清洗加工 到 数据存储的过程,能够为金融分析人员提供快速、整洁、和多样的便于分析的 数据,为他们在数据获取方面极大地...

    java天气数据接口

    本文将深入探讨“Java天气数据接口”的相关知识点,包括如何调用气象数据接口,Java语言中的实现方式,以及如何在实际项目中应用。 首先,"Xfire"可能是指一个用于调用气象数据的API服务或者库,它提供了获取天气...

    java调用OPC获取点位数据

    Java调用OPC(OLE for Process Control)获取点位数据是一项常见的工业自动化任务,尤其在SCADA(Supervisory Control and Data Acquisition)系统中。OPC是微软平台上的一个标准接口,它允许不同厂商的软件应用程序...

    java web接口开发demo

    【Java Web接口开发】是Web应用程序开发中的一个重要环节,它允许不同的系统或客户端通过网络进行数据交互。在Java世界中,实现Web接口通常涉及到Servlet、JSP、Spring MVC或者RESTful API等技术。本示例"java web...

    java webService接口开发案例

    Java WebService接口开发是将Java应用程序暴露为网络服务的一种方式,允许不同系统间的数据交换和交互。本案例将深入探讨如何使用Java实现Web服务的创建、发布和调用。 一、理解WebService WebService是一种基于...

    DELPHI 7 调用 JAVA 接口

    6. **传递参数和接收结果**:在Delphi中,你可以使用上述函数,传入Java接口名、方法名以及参数,调用Java方法并获取返回值。 ```delphi const ClassName = 'com/example/MyJavaClass'; MethodName = '...

    Java程序调用MATLAB接口

    Java程序调用MATLAB接口 Java 程序调用 MATLAB 接口是 Java 和 MATLAB 之间的交互接口,允许 Java 程序调用 MATLAB 的函数和方法。本文将详细介绍 Java 程序调用 MATLAB 接口的注意事项、环境安装、MATLAB 如何生成...

    java http 接口调用 的get和post传参方法

    java实现调用httpclient接口的类和方法,包括了get和post传参方式,简单易懂

    Java调用SPSS的实例.docx

    通过这种方式,Java开发者可以在不离开自己的开发环境的情况下,利用SPSS的强大统计功能,实现数据分析和处理的自动化,提升工作效率。同时,这也可以为构建更复杂的统计分析应用提供基础,例如集成到企业级的数据...

    Java天气应用程序 - 使用天气API获取实时天气数据并显示给用户

    在开发Java天气应用程序时,首先需要理解项目的目标和主要步骤。该项目的核心是通过与天气API交互,获取实时的天气信息,并在用户界面中展示。在这个过程中,我们将涉及到以下几个关键技术点: 1. **网络请求**: ...

    java爬虫,调用接口抓取各个省份的地址表,调用自动化操作封装页面获取数据

    以上就是对“java爬虫,调用接口抓取各个省份的地址表,调用自动化操作封装页面获取数据”这一项目涉及的主要知识点的详解。在实际开发中,还需要结合具体的业务需求和接口文档,进行具体的功能设计和代码实现。

    Java RPC调用示例

    总结一下,Java RPC调用涉及服务接口定义、数据序列化、网络通信、服务注册与发现以及调用处理等多个环节。通过理解这些概念和技术,我们可以更好地理解和实现Java中的RPC调用。在"RpcTest"这个示例中,我们可以深入...

    基于JAVA的数据可视化分析平台,自由制作任何您想要的数据看板,支持接入SQL、CSV、Excel、HTTP接口、JSON等

    1. **JAVA技术基础**:此平台是用JAVA语言开发的,JAVA作为一款跨平台、面向对象的语言,以其稳定性和可扩展性而受到广泛认可,特别适合开发大型企业级应用,如数据可视化系统。 2. **数据源接入**: - **SQL**:...

    T100 Web Service 接口开发v1.5版.rar

    20150715.ppt”可能是演示文稿或培训材料,详细介绍了接口的开发流程和技术细节,包括XML Schema定义、WSDL(Web Services Description Language)文件的构造以及如何使用工具如WSDL2Java生成客户端代码。...

    GMSSL的java调用(JNI库和调用实例).zip

    在这个“GMSSL的java调用(JNI库和调用实例).zip”压缩包中,我们主要探讨如何在Java环境中通过JNI(Java Native Interface)来调用GMSSL库,以便利用这些国密算法进行数据加解密和哈希运算。 首先,我们需要了解...

    PB调用http api接口 PB解析json

    PB调用HTTP API接口是PowerBuilder(PB)应用程序与远程服务交互的一种常见方式,这使得PB应用能够利用Web服务或RESTful API获取和传递数据。在这个过程中,PB不仅需要发送HTTP请求,还需要处理响应,尤其是当响应...

    金蝶接口对接java工具类.zip

    金蝶接口对接在Java后端开发中是一项常见的任务,它涉及到企业级应用系统间的集成与数据交换。金蝶是一款知名的企业资源规划(ERP)软件,提供了API接口供其他系统进行数据交互。在这个“金蝶接口对接java工具类.zip...

    http和WebService 调用接口Java代码demo

    综上所述,"http和WebService 调用接口Java代码demo"这个主题涵盖了Java通过HTTP进行接口调用的基本方法,以及Web Service的使用,特别是结合Spring Boot的场景。在实际项目中,理解并熟练运用这些技术能够帮助我们...

    service_java接口远程调用_get、post、带参数远程调用_

    在Java编程中,远程接口调用是分布式系统中常见的通信方式,它允许不同的服务之间进行数据交换和功能调用。本篇文章将详细讲解如何使用Java实现GET和POST方法的远程接口调用,以及如何处理带有参数的情况。 首先,...

Global site tag (gtag.js) - Google Analytics