import requests
from io import BytesIO
import zipfile
import xmltodict
import json
import xmltodict
#상장되어있는 종목코드 리스트 출력 함수
def get_shcodelist():
api = 'https://opendart.fss.or.kr/api/corpCode.xml'
res = requests.get(api, params={'crtfc_key': '6dcXXXXXXXXXXXXXXXXXXXXXXXX'})
data_xml = zipfile.ZipFile(BytesIO(res.content))
data_xml = data_xml.read('CORPCODE.xml').decode('utf-8')
data_odict = xmltodict.parse(data_xml)
data_dict = json.loads(json.dumps(data_odict))
data = data_dict.get('result', {}).get('list')
length=0
for i in range(len(data)):
if data[i]['stock_code'] is not None:
length=length+1
shcodelist=list(range(length))
count=0
for i in range(len(data)):
if data[i]['stock_code'] is not None:
#print(data[i]) #기업명을 포함한 dictionary형태 출력
shcodelist[count]=data[i]['stock_code']
count = count+1
return shcodelist
print(get_shcodelist())
'Language > python' 카테고리의 다른 글
Batch파일 만들기(Python conda환경) (0) | 2021.06.28 |
---|---|
[ Python library ] get_balancesheet함수를 통해 최근 5개 분기 재무상태표를 불러와서 linkedjemun테이블에 insert하기 (0) | 2021.06.21 |
[ Python conda ] conda에서 github로부터 package install 하기 (0) | 2021.06.04 |
[ Python library ] 특정 기업의 최근 5개 분기 대차대조표 Dataframe으로 반환 (0) | 2021.06.03 |
파이썬으로 주식 포트폴리오구성 (0) | 2021.06.03 |