Newer
Older
stockTray / EastMoneyPy / venv / main / eastmoney / getGeGuBanKuai.py
bello on 5 Nov 2020 2 KB 板块分类补全
# coding=utf-8

import httpConn
import dbConn
from SendEmail import Email

def getCode():
    url = 'http://41.push2.eastmoney.com/api/qt/clist/get?pn=1&pz=6000&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'])


def getBankuai(cate):
    url = 'http://push2.eastmoney.com/api/qt/clist/get?pn=1&pz=300&po=1&np=1&fields=f12,f14&fid=f62&fs=m:90+t:'+cate+'&ut='
    conn = httpConn.HttpConnect()
    data = conn.request_get(url)

    if data == '':
        print('查询banKuai失败')

    else:
        for i in data['data']['diff']:
            code = str(i['f12'])
            name = str(i['f14'])

            sql = "REPLACE INTO t_bankuai SET `code` = '%s', `name` = '%s', cate = %s;" % (code, name, cate)
            bkList.append(sql)

            getGeGuBanKuai(cate, code, name)



def getGeGuBanKuai(bkType, bkCode, bkName):
    url = 'http://push2.eastmoney.com/api/qt/clist/get?pn=1&pz=5000&po=1&np=1&ut=&fltt=2&invt=2&fid=f62&fs=b:'+bkCode+'&stat=1&fields=f12,f14,f2,f3,f62,f184,f66,f69,f72,f75,f78,f81,f84,f87,f204,f205,f124'
    conn = httpConn.HttpConnect()
    data = conn.request_get(url)
    # print(data)

    if data == '':
        print('查询code失败')

    else:

        for i in data['data']['diff']:
            code = str(i['f12'])
            name = str(i['f14'])

            sql = "REPLACE INTO `t_bankuai_gegu`(`code`, `name`, `cate`, `bkCode`, `bkName`) VALUES ('%s', '%s', '%s', '%s', '%s')" % \
                  (code, name, bkType, bkCode, bkName)

            sqlList.append(sql)


try:
    bkList = []
    sqlList = []

    # 注释这行,用getCodeInfo.py获取
    # getCode()

    getBankuai('1')
    getBankuai('2')
    getBankuai('3')
    
    dbConn.MY_SQL().save_bankuai_table(bkList)
    dbConn.MY_SQL().save_bankuai_table(sqlList)
    # print(len(sqlList))
    print('=== get gegu bankuai success ===')

except Exception as e:
    Email.sendErr()