안녕하세요!! 파이썬을 이용해서 간단하게 종목 리스트를 뽑아보려고 합니다.
프로그래밍 x 간단한 방법
http://kind.krx.co.kr/corpgeneral/corpList.do?method=loadInitPage
일단 전체 종목들은 해당 사이트에서 조회가 가능합니다.
이 사이트에서 EXCEL 파일을 누르면 자동으로 다운이 받아지고 간단하게 해결이 가능하답니다.
파이썬을 이용하려는 이유
제가 원하는 기준으로 필터처럼 종목들을 거르려고 합니다.
일련의 과정들이 파이썬 하나로 가능해 보여서 통일해봅니다.
파이썬 소스 코드
1
2
3
4
5
6
|
import pandas as pd
df = pd.read_html('http://kind.krx.co.kr/corpgeneral/corpList.do?method=download', header=0)[0]
df.종목코드 = df.종목코드.map('{:06d}'.format)#코스피 코스닥 상장 종목 조회
df = df[['회사명', '종목코드']]#원하는 데이터만 뽑습니다.
df = df.rename(columns={'회사명': 'name', '종목코드': 'code'})#필요 시에만 사용할 코드
print(df)
|
cs |
pandas는 대용량 데이터를 처리하는 데 요긴하게 쓰이는 모듈입니다.
또한 이 친구가 다루는 데이터의 모습이 엑셀이랑 유사하게 생겼어요.
우리가 다룰 데이터도 엑셀이기에 pandas를 써줍시다.
read_html로 해당 링크에 있는 데이터를 읽어옵니다.
http://kind.krx.co.kr/corpgeneral/corpList.do?method=loadInitPage
아까 알려드린 링크인데 자세히 보면 다르지 않나요??
F12를 누르시면 개발자 도구를 통해 페이지 분석이 가능해집니다.
searchForm에서 첫번째 줄이 우리가 원하는 엑셀 다운로드와 관련된 부분이에요.
그래서 우리는 이 정보를 포함해서 URL을 적어야 합니다.
print로 출력을 해보면
name code
0 DSR 155660
1 GS 078930
2 GS글로벌 001250
3 HDC현대산업개발 294870
4 LG이노텍 011070
... ... ...
2348 툴젠 199800
2349 플럼라인생명과학 222670
2350 피엔에이치테크 239890
2351 한국미라클피플사 331660
2352 휴벡셀 212310
[2353 rows x 2 columns]
Process finished with exit code 0
이렇게 중간 부분이 짤려나와요.
df.to_excel('result.xlsx',sheet_name='Sheet1')
저는 제대로 동작하는지 확인하기 위해서 따로 엑셀 파일에 저장했습니다.
위의 코드를 전부 돌리고 싶으신 분들은
pip install pandas
pip install lxml
pip install openpyxl
cmd 창에서 입력해주세요.
lxml은 엑셀 데이터 읽는 데 쓰이고요.
openpyxl은 내보내는 데 사용합니다.
'TechTalk' 카테고리의 다른 글
로그인 페이지 만들기 디자인편 (0) | 2020.07.20 |
---|---|
github(깃허브) 오픈소스 컨트리뷰트하기 (0) | 2020.07.18 |
카카오 지도 API를 이용해 지도 띄우기 (0) | 2020.07.15 |
카카오 API 키 발급 (0) | 2020.07.13 |
Radio label 이미지 추가하기 (0) | 2020.07.10 |