[ 금융데이터 수집하기 시리즈]
(업데이트 시, 링크를 연결할 예정입니다)
(2) 전 종목 시세데이터 수집하기 - 코스피, 코스닥 상장기업 리스트와 종목코드 크롤링
(3) 전 종목 시세데이터 수집하기 - 상장기업 전 종목 시세데이터 크롤링
(4) Opendart API로 재무제표 데이터 수집하기 - 업데이트 예정
안녕하세요! 혤로그 입니다🙂
오늘은 전 종목의 시세데이터 수집을 위해 상장 기업 목록과 종목 코드를 크롤링해보도록 하겠습니다.
라이브러리를 통해 데이터를 쉽게 가져오는 방법도 있지만,
저는 여러분이 다른 데이터를 수집할 때 응용하실 수 있도록
일반적인 크롤링 방식을 이용해보겠습니다 🧐
(맨 아래에 api 활용방법도 추가하였습니다. )
[ 상장 기업 목록 가져오기 ]
1️⃣ 크롤링 할 url 주소 확인하기
데이터를 크롤링하기 위해서 데이터를 가져올 수 있는 웹 페이지를 선정해야합니다.
저는 KRX로부터 상장 기업 목록 파일을 읽어오겠습니다.
🔸http://kind.krx.co.kr/corpgeneral/corpList.do?method=download&searchType=13
위 url을 클릭하면 한국거래소에서 제공하는 상장법인목록을 다운받을 수 있습니다.
상장된 회사와 해당 종목의 종목코드를 포함하고 있습니다.
종목코드와 회사명을 연결지어서 알고 있으면 데이터를 관리하기 편하기 때문에 위 파일을 이용하였습니다.
2️⃣ 종목코드 업데이트 함수 작성하기
def read_krx_code():
# 상장 종목 목록 가져오기
url = 'http://kind.krx.co.kr/corpgeneral/corpList.do?method=download&searchType=13'
krx = pd.read_html(url,header=0)[0]
# 데이터 정리
krx = krx[['종목코드','회사명']]
krx = krx.rename(columns={'종목코드':'code','회사명':'company'})
krx.code = krx.code.map('{:06d}'.format)
krx.to_csv(f"{self.file_path}/listed_company.csv",index=False)
return krx
1. read_html을 통해 해당 url의 파일의 table 값을 읽어 Dataframe 형태로 저장합니다.
2. 해당 데이터에서 종목코드와 회사명만 추출합니다.
3. 칼럼명을 영문으로 바꿔줬습니다.
4. 종목코드는 6자리 수로 맞춰줬습니다. ( 종목코드 60 -> 종목코드 000060 )
[ FinanceDataReader 활용하기 ]
https://github.com/FinanceData/FinanceDataReader
GitHub - FinanceData/FinanceDataReader: Financial data reader
Financial data reader. Contribute to FinanceData/FinanceDataReader development by creating an account on GitHub.
github.com
financedatareader는 금융데이터를 가공하여 제공해주는 api로
한국거래소(krx), kospi, kosdaq, konex, nasdaq, 뉴욕증권거래소, s&p500 등의 시장 거래 종목의 데이터를 가지고 있습니다. 라이브러리와 메쏘드 호출만으로 데이터를 가져올 수 있다는 점에서 편하게 사용하실 수 있습니다.
1️⃣ financedatareader 설치하기
pip install finance-datareader
2️⃣ 코드 작성하기
import FinanceDataReader
df_krx = FinanceDataReader.StockListing("KRX")
df_krx.head()

1. StockListing 메쏘드를 통해 상장 종목의 정보를 확인할 수 있습니다.
이 외에도 다양한 정보를 제공하고 있으며 사용 방법은 위 깃헙 페이지에서 확인하실 수 있습니다 🙂
>> 관련 책
https://link.coupang.com/a/qra6F
파이썬 증권 데이터 분석:파이썬 입문 웹 스크레이핑 트레이딩 전략 자동 매매
COUPANG
www.coupang.com
'Python > 파이썬으로 퀀트 전략 구현하기' 카테고리의 다른 글
[python] 금융데이터 수집하기(1) - 주식 시세 데이터 수집하기 (feat. 삼성전자) (0) | 2022.06.15 |
---|