首页 > 技术文章 > 获取带接口的股票数据

tan2810 2019-12-16 18:01 原文

mport urllib.request

import re
 
codeUrl = 'https://hq.gucheng.com/gpdmylb.html'
 
#获取股票代码
def codeTolist():
    codeList = []
    html = urllib.request.urlopen(codeUrl).read()
    html = html.decode('utf-8')
    = '<a href="https://hq.gucheng.com/(SZ|SH)(.*?)/">'
    = re.compile(s)
    data = p.findall(html)
    for code in data:
        codeList.append(code[1])
    return codeList
 
allCodeList = codeTolist()
 
#下载股票数据
def allDown():
    = len(allCodeList)
    for code in allCodeList:
        print(f'正在获取{code}股票数据')
        if code[0=='6':
            Url = 'http://quotes.money.163.com/service/chddata.html?code=0'+code+\
                '&start=19981218&end=20191213&fields=TCLOSE;HIGH;LOW;TOPEN;LCLOSE;CHG;PCHG;TURNOVER;VOTURNOVER;VATURNOVER;TCAP;MCAP'
        else:
            Url = 'http://quotes.money.163.com/service/chddata.html?code=1'+code+\
                '&start=19981218&end=20191213&fields=TCLOSE;HIGH;LOW;TOPEN;LCLOSE;CHG;PCHG;TURNOVER;VOTURNOVER;VATURNOVER;TCAP;MCAP'
        urllib.request.urlretrieve(Url,'d:\\gupiao\\'+code+'.csv')
        = -1
        if == 0:
            print('所有股票下载完毕!')
allDown()

推荐阅读