# coding=utf-8
import time
import httpConn
import dbConn
from multiprocessing.dummy import Pool as ThreadPool
# lines = []
def getAllCode():
url = 'http://41.push2.eastmoney.com/api/qt/clist/get?pn=1&pz=5000&po=1&np=1&ut=&fltt=2&invt=2&fid=f3&fs=m:0+t:6,m:0+t:13,m:0+t:80,m:1+t:2,m:1+t:23&fields=f12,f13,f14'
conn = httpConn.HttpConnect()
data = conn.request_get(url)
# print(data)
if data == '':
print('查询code失败')
else:
db = dbConn.MY_SQL()
db.save_code_table(data['data']['diff'])
getHistoryDayLine('1.000001')
getHistoryDayLine('0.399001')
# codes = []
# codes.append('1.000001')
# codes.append('0.399001')
for i in data['data']['diff']:
code = str(i['f12'])
market = str(i['f13'])
# codes.append(market + '.' + code)
getHistoryDayLine(market + '.' + code)
# pool = ThreadPool(10)
# pool.map(getHistoryDayLine, codes)
# pool.close()
# pool.join()
#
# print(len(lines))
# db = dbConn.MY_SQL()
# db.save_day_line_table(lines)
def getHistoryDayLine(code):
url = 'http://28.push2his.eastmoney.com/api/qt/stock/kline/get?secid='+code+'&ut=&fields1=f1%2Cf2%2Cf3%2Cf4%2Cf5&fields2=f51%2Cf52%2Cf53%2Cf54%2Cf55%2Cf56%2Cf57%2Cf58&klt=101&fqt=0&end=20500101&lmt=10000'
conn = httpConn.HttpConnect()
res = conn.request_get(url)
print(code)
if res == '':
print('查询dayLine失败')
else:
data = res['data']
lines = []
preShouPan = 0
for i in data['klines']:
arr = i.split(',')
arr.append(data['code'])
arr.append(data['name'])
arr.append(data['market'])
if preShouPan == 0:
arr.append(0)
else:
arr.append('%.3f' % ((float(arr[2]) - float(preShouPan))/float(preShouPan)*100))
preShouPan = float(arr[2])
# print(arr)
lines.append(arr)
db = dbConn.MY_SQL()
db.save_day_line_table(lines)
time.sleep(1)
getAllCode()