import pandas as pd
class SingletonType(type):
def __call__(cls, *args, **kwargs):
try:
return cls.__instance
except AttributeError:
cls.__instance = super(SingletonType, cls).__call__(*args, **kwargs)
return cls.__instance
class CodeMan(object, metaclass=SingletonType):
def __init__(self):
self.code_df = self.get_code_list()
def get_code_list(self):
code_df = pd.read_html('http://kind.krx.co.kr/corpgeneral/corpList.do?method=download&searchType=13', header=0)[0]
code_df.종목코드 = code_df.종목코드.map('{:06d}'.format)
code_df = code_df[['회사명', '종목코드']]
code_df = code_df.rename(columns={'회사명': 'name', '종목코드': 'code'})
print(code_df)
return code_df
def show(self):
print(self.code_df)
CodeMan.__call__().show()
--------------- 결과 -------------------
name code
0 CJ 001040
1 HDC 012630
2 HSD엔진 082740
3 KG케미칼 001390
4 LG이노텍 011070
5 SH에너지화학 002360
6 SK네트웍스 001740
7 STX 011810
8 STX중공업 071970
9 WISCOM 024070
10 갤럭시아에스엠 011420
11 경동도시가스 267290
12 고려제강 002240
13 골든브릿지증권 001290
14 극동유화 014530
15 금호에이치티 214330
16 까뮤이앤씨 013700
17 노루페인트 090350
18 녹십자홀딩스 005250
19 대덕GDS 004130
20 대림씨엔에스 004440
21 대영포장 014160
22 대웅 003090
23 대원제약 003220
24 대유에이텍 002880
25 동국실업 001620
26 동남합성 023450
27 동방 004140
28 동아쏘시오홀딩스 000640
29 동양 001520
... ... ...
2188 하이비젼시스템 126700
2189 한국기업평가 034950
2190 한국제6호스팩 281410
2191 한네트 052600
2192 한라IMS 092460
2193 한양이엔지 045100
2194 한화수성스팩 265920
2195 휴맥스 115160
2196 희림 037440
2197 다이노나 086080
2198 럭스피아 092590
2199 루켄테크놀러지스 162120
2200 메디젠휴먼케어 236340
2201 미애부 225850
2202 빅텐츠 210120
2203 세신버팔로 110660
2204 아이케이세미콘 149010
2205 알로이스 271400
2206 엄지하우스 224810
2207 에이원알폼 234070
2208 에프앤가이드 064850
2209 엔케이맥스 262760
2210 엘피케이 183350
2211 인프라웨어테크놀러지 247300
2212 제이에스피브이 250300
2213 툴젠 199800
2214 티씨엠생명과학 228180
2215 틸론 217880
2216 파인이엠텍 278990
2217 판도라티비 202960
[2218 rows x 2 columns]