您的位置:首页技术文章
文章详情页

python3.x - python连oanda的模拟交易api获取json问题第二问

【字号: 日期:2022-07-11 11:52:35浏览:56作者:猪猪

问题描述

在第一问中已解决连接oanda的模拟交易api获得EUR_USD的即时汇率,再次感谢@prolifes的热情帮助,其程序如下:import requestsimport jsonurl = 'https://api-fxpractice.oanda.com/v1/prices'instruments = ’EUR_USD’account_id = ’cawa11’params = {’instruments’:instruments,’accountId’:account_id}access_token = ’a554db3a48ac8180a6996a5547ba1663-ac5947e64456cc5842a34f4ce05e4380’ headers = {’Authorization’:’Bearer ’+access_token} #Bearer后有空格r = requests.get(url,headers = headers, params=params) print(r.json())所得json为:{’prices’: [{’bid’: 1.0926, ’time’: ’2017-05-03T05:45:25.737018Z’, ’ask’: 1.09274, ’instrument’: ’EUR_USD’}]}现在我想同时获得EUR_USD和USD_CAD的即时汇率,获得如下形式的json:{’prices’: [{’instrument’: ’EUR_USD’, ’ask’: 1.09324, ’time’: ’2017-05-03T04:44:38.200174Z’, ’bid’: 1.09311},{’instrument’: ’USD_CAD’, ’ask’: 1.37270, ’time’: ’2017-05-03T04:44:38.200174Z’, ’bid’: 1.37251}]}

问题解答

回答1:

问题已解决,谢谢各位关注:import requestsimport json

url = 'https://api-fxpractice.oanda.com/v1/prices'instruments = ’EUR_USD,USD_CAD’account_id = ’cawa11’params = {’instruments’:instruments,’accountId’:account_id}access_token = ’a554db3a48ac8180a6996a5547ba1663-ac5947e64456cc5842a34f4ce05e4380’ headers = {’Connection’: ’Keep-Alive’,’Accept-Encoding’: ’gzip,deflate’,’Authorization’:’Bearer ’+access_token} r = requests.get(url,headers = headers, params=params) price = r.json()print(r.json())print(price’prices’[’instrument’].replace(’_’,’/’),’:’,round((price’prices’[’ask’]+price’prices’[’bid’])/2,4),’ ’,price’prices’[’time’])print(price’prices’[’instrument’].replace(’_’,’/’),’:’,round((price’prices’[’ask’]+price’prices’[’bid’])/2,4),’ ’,price’prices’[’time’])

输出:{’prices’: [{’bid’: 1.09171, ’ask’: 1.09184, ’instrument’: ’EUR_USD’, ’time’: ’2017-05-03T06:44:19.750556Z’}, {’bid’: 1.37203, ’ask’: 1.37219, ’instrument’: ’USD_CAD’, ’time’: ’2017-05-03T06:44:19.738338Z’}]}EUR/USD : 1.0918 2017-05-03T06:44:19.750556ZUSD/CAD : 1.3721 2017-05-03T06:44:19.738338Z

回答2:

这个已经不是技术层次的问题了,你应该去了解一下他的api有没有提供这个功能,如果没有提供同时获取两个的功能,那你只能分开来取,然后再合并起来

标签: Python 编程
相关文章: