金融数据,股票数据,虚拟货币,量化投资,学习量化
订购预测者网推送数据服务后,推送数据会在每天盘后发送到您的邮箱。此外,我们也提供了数据接口,让您可以写程序自动更新数据,不用每天从邮箱中下载数据。
该链接返回数据的下载地址。有如下几种情况:
Python3只需要更改一下urllib的库引用即可。
# encoding: utf-8
"""
# API PYTHON DEMO
基于API V1的自动下载示例代码
使用前需去[https://www.yucezhe.com/user/home](https://www.yucezhe.com/user/home)配置API KEY;
使用时需配置注册邮箱,默认下载地址为程序同目录;
Copyright © 2011-2017 yucezhe.com, All rights reserved.
"""
from urllib import urlretrieve, urlencode
from urllib2 import urlopen
# from urllib.request import urlopen, urlretrieve, urlencode # used in python3
API_URL = 'https://yucezhe.com/api/v1/data/today'
# ****************************config*************************************** #
EMAIL = 'contact@yucezhe.com' # 购买数据时候使用的邮箱地址
API_KEY = 'THIS IS YOUR API KEY' # 于页面配置的API KEY
# **************************config_end************************************* #
def get_today(product_name, local_file_name):
"""
:param product_name: the product name, get it from the url of the product homepage
:param local_file_name: the local file name to save as
:return: the download url after file saved
"""
params = {
'name': product_name,
'email': EMAIL,
'key': API_KEY
}
params_str = urlencode(params)
response = urlopen('%s?%s' % (API_URL, params_str))
data_download_url = response.read()
if 'data.yucezhe.com' in data_download_url:
print('[URL GET]:', data_download_url)
urlretrieve(data_download_url, local_file_name)
return data_download_url
else:
print(data_download_url)
return None
def get_today_auto(product_name, local_file_name):
"""
this function will auto wait if the data is not ready
and auto stop when download finished
:param product_name: equivalent to 'get_today'
:param local_file_name: equivalent to 'get_today'
:return: nothing
"""
_u = get_today(product_name, local_file_name)
import time
while _u is None:
print '[auto run]: data is not ready, retry in 30s'
time.sleep(30)
_u = get_today(product_name, local_file_name)
get_today_auto('trading-data-push', 'trading-data-push.zip')