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是一个免费、开源的python财经数据接口包。主要实现对股票等金融数据从数据采 集、清洗加工 到 数据存储的过程,能够为金融分析人员提供快速、整洁、和多样的便于分析的 数据,为他们在数据获取方面极大地...
本文将深入探讨“Java天气数据接口”的相关知识点,包括如何调用气象数据接口,Java语言中的实现方式,以及如何在实际项目中应用。 首先,"Xfire"可能是指一个用于调用气象数据的API服务或者库,它提供了获取天气...
Java调用OPC(OLE for Process Control)获取点位数据是一项常见的工业自动化任务,尤其在SCADA(Supervisory Control and Data Acquisition)系统中。OPC是微软平台上的一个标准接口,它允许不同厂商的软件应用程序...
【Java Web接口开发】是Web应用程序开发中的一个重要环节,它允许不同的系统或客户端通过网络进行数据交互。在Java世界中,实现Web接口通常涉及到Servlet、JSP、Spring MVC或者RESTful API等技术。本示例"java web...
Java WebService接口开发是将Java应用程序暴露为网络服务的一种方式,允许不同系统间的数据交换和交互。本案例将深入探讨如何使用Java实现Web服务的创建、发布和调用。 一、理解WebService WebService是一种基于...
6. **传递参数和接收结果**:在Delphi中,你可以使用上述函数,传入Java接口名、方法名以及参数,调用Java方法并获取返回值。 ```delphi const ClassName = 'com/example/MyJavaClass'; MethodName = '...
Java程序调用MATLAB接口 Java 程序调用 MATLAB 接口是 Java 和 MATLAB 之间的交互接口,允许 Java 程序调用 MATLAB 的函数和方法。本文将详细介绍 Java 程序调用 MATLAB 接口的注意事项、环境安装、MATLAB 如何生成...
java实现调用httpclient接口的类和方法,包括了get和post传参方式,简单易懂
通过这种方式,Java开发者可以在不离开自己的开发环境的情况下,利用SPSS的强大统计功能,实现数据分析和处理的自动化,提升工作效率。同时,这也可以为构建更复杂的统计分析应用提供基础,例如集成到企业级的数据...
在开发Java天气应用程序时,首先需要理解项目的目标和主要步骤。该项目的核心是通过与天气API交互,获取实时的天气信息,并在用户界面中展示。在这个过程中,我们将涉及到以下几个关键技术点: 1. **网络请求**: ...
以上就是对“java爬虫,调用接口抓取各个省份的地址表,调用自动化操作封装页面获取数据”这一项目涉及的主要知识点的详解。在实际开发中,还需要结合具体的业务需求和接口文档,进行具体的功能设计和代码实现。
总结一下,Java RPC调用涉及服务接口定义、数据序列化、网络通信、服务注册与发现以及调用处理等多个环节。通过理解这些概念和技术,我们可以更好地理解和实现Java中的RPC调用。在"RpcTest"这个示例中,我们可以深入...
1. **JAVA技术基础**:此平台是用JAVA语言开发的,JAVA作为一款跨平台、面向对象的语言,以其稳定性和可扩展性而受到广泛认可,特别适合开发大型企业级应用,如数据可视化系统。 2. **数据源接入**: - **SQL**:...
20150715.ppt”可能是演示文稿或培训材料,详细介绍了接口的开发流程和技术细节,包括XML Schema定义、WSDL(Web Services Description Language)文件的构造以及如何使用工具如WSDL2Java生成客户端代码。...
在这个“GMSSL的java调用(JNI库和调用实例).zip”压缩包中,我们主要探讨如何在Java环境中通过JNI(Java Native Interface)来调用GMSSL库,以便利用这些国密算法进行数据加解密和哈希运算。 首先,我们需要了解...
PB调用HTTP API接口是PowerBuilder(PB)应用程序与远程服务交互的一种常见方式,这使得PB应用能够利用Web服务或RESTful API获取和传递数据。在这个过程中,PB不仅需要发送HTTP请求,还需要处理响应,尤其是当响应...
金蝶接口对接在Java后端开发中是一项常见的任务,它涉及到企业级应用系统间的集成与数据交换。金蝶是一款知名的企业资源规划(ERP)软件,提供了API接口供其他系统进行数据交互。在这个“金蝶接口对接java工具类.zip...
综上所述,"http和WebService 调用接口Java代码demo"这个主题涵盖了Java通过HTTP进行接口调用的基本方法,以及Web Service的使用,特别是结合Spring Boot的场景。在实际项目中,理解并熟练运用这些技术能够帮助我们...
在Java编程中,远程接口调用是分布式系统中常见的通信方式,它允许不同的服务之间进行数据交换和功能调用。本篇文章将详细讲解如何使用Java实现GET和POST方法的远程接口调用,以及如何处理带有参数的情况。 首先,...