본문 바로가기
미정리

KIND에서 상장 법인 목록 크롤링 하는 법

by 자동매매 2022. 3. 9.

 

 

대한민국 대표 기업공시채널 KIND

업종 전체 농업, 임업 및 어업 광업 제조업 - 식료품 제조업 - 음료 제조업 - 담배 제조업 - 섬유제품 제조업; 의복제외 - 의복, 의복액세서리 및 모피제품 제조업 - 가죽, 가방 및 신발 제조업 - 목

kind.krx.co.kr

 

 

[Python] Pandas를 이용하여 주식 종목 코드 가져오기! 한국 거래소 (KRX).

주식 거래를 할 때 회사들을 일련의 코드로써 나열을 하게 됩니다. 그렇다면 주식의 정보를 가져오기 위해서는 코스피(KOSPI)와 코스닥(KOSDAQ)의 종목 코드 목록을 알아야 하는데요, 3000여 개나 되

wendys.tistory.com

 

 

KRX에서 상장 회사 검색 갈무리(크롤링)하는 법

* KRX의 정책의 변화에 따라 작동되지 않을 수도 있습니다. * 실제 투자에 사용하지 마십시오. 앞서 알려드린 KIND의 본진이죠? 한국거래소(KRX)에서도 상장회사 검색을 통해 목록을 구할 수 있습니

comdoc.tistory.com

 

 

 

상장법인목록 Excel파일로 다운로드 및 링크 확인

다운로드 링크 확인 방법

1. 위 창에서 F12 click

2. Network 탭 click

3. Excel 다운로드 버튼 click 

  네트워크 탭에서 corpList.do라는 항목을 볼 수 있습니다. 

4. corpList.do 클릭하여 아래 정보 확인

Headers>General>Request URL
: https://kind.krx.co.kr/corpgeneral/corpList.do
Payload>View Source

5. Request URL과 Form Data를 조합해서 엑셀 파일 다운로드 : ?로 연결

https://kind.krx.co.kr/corpgeneral/corpList.do?method=download&pageIndex=1&currentPageSize=3000&comAbbrv=&beginIndex=&orderMode=3&orderStat=D&isurCd=&repIsuSrtCd=&searchCodeType=&marketType=&searchType=13&industry=&fiscalYearEnd=all&comAbbrvTmp=&location=all

 

6. marketType을 변경하여 요청해보자!!

   : stockMkt, kosdaqMkt, konexMkt

https://kind.krx.co.kr/corpgeneral/corpList.do?method=download&pageIndex=1&currentPageSize=3000&comAbbrv=&beginIndex=&orderMode=3&orderStat=D&isurCd=&repIsuSrtCd=&searchCodeType=&marketType=kosdaqMkt&searchType=13&industry=&fiscalYearEnd=all&comAbbrvTmp=&location=all

 

 

import pandas as pd

# 파일명은 엑셀이지만, 실제 내용은 html이기 때문에 read_html로 읽습니다.
df = pd.read_html('http://kind.krx.co.kr/corpgeneral/corpList.do?method=download', header=0)[0]

"""
엑셀에서 위 파일을 열면 종목코드가 000020 형식으로 정상적으로 보이는데
판다스로 불러오면 정수형 20으로 보입니다.
종목코드를 정수 20으로 쓰는 경우는 거의 없기 때문에
'000020'형식의 문자열로 바꿔야합니다.
"""

# 종목코드를 빈자리는 0으로 채워진 6자리 문자열로 변환합니다.

# temp = []
# for each in df['종목코드']:
#     temp.append(f'{each:0>6}')
# df['종목코드'] = temp

df['종목코드'] = df['종목코드'].map(lambda x: f'{x:0>6}')
print(df.head())
print('-'*20)

# 데이터에서 정렬
# pandas data frame을 '상장일' 기준으로 정렬 (ascending=[True], [False]로 오름차순, 내림차순 정렬)
df = df.sort_values(['상장일'], ascending=[True])
print(df.head())
print('-'*20)

# 필요항목만 출력
df = df[['회사명', '종목코드']]
print(df.head())

 

 

 

 

 

 

 

 

 

 

 

 

x=1&currentPageSize=3000&comAbbrv=&beginIndex=&orderMode=3&orderStat=D&isurCd=&repIsuSrtCd=&searchCodeType=&marketType=&searchType=13&industry=&fiscalYearEnd=all&comAbbrvTmp=&location=allmethod=download&pageIndex=1&currentPageSize=3000&comAbbrv=&beginIndex=&orderMode=3&orderStat=D&isurCd=&repIsuSrtCd=&searchCodeType=&marketType=&searchType=13&industry=&fiscalYearEnd=all&comAbbrvTmp=&location=allmethod=download&pageIndex=1&currentPageSize=3000&comAbbrv=&beginIndex=&orderMode=3&orderStat=D&isurCd=&repIsuSrtCd=&searchCodeType=&marketType=&searchType=13&industry=&fiscalYearEnd=all&comAbbrvTmp=&location=allmethod=download&pageIndex=1&currentPageSize=3000&comAbbrv=&beginIndex=&orderMode=3&orderStat=D&isurCd=&repIsuSrtCd=&searchCodeType=&marketType=&searchType=13&industry=&fiscalYearEnd=all&comAbbrvTmp=&location=allmethod=download&pageIndex=1&currentPageSize=3000&comAbbrv=&beginIndex=&orderMode=3&orderStat=D&isurCd=&repIsuSrtCd=&searchCodeType=&marketType=&searchType=13&industry=&fiscalYearEnd=all&comAbbrvTmp=&location=allmethod=download&pageIndex=1&currentPageSize=3000&comAbbrv=&beginIndex=&orderMode=3&orderStat=D&isurCd=&repIsuSrtCd=&searchCodeType=&marketType=&searchType=13&industry=&fiscalYearEnd=all&comAbbrvTmp=&location=all

'미정리' 카테고리의 다른 글

Core Qt modules  (0) 2023.02.24
PyQt5 참조  (0) 2023.02.24
Installing Qt Designer  (0) 2023.02.24
Pandas를 이용한 Naver금융에서 주식데이터 가져오기  (0) 2022.03.09

댓글