3주차 강의에서는
파이썬에서 DART 기업공시 데이터를 활용해 분석하는 것을 배웠다.
개인적으로 너무 유익했던 강의였다!
1편에는,
1. DART의 Open API란 무엇인지,
2. Dart Open API 키는 왜 발급받고, 어떻게 발급받는 것인지,
3. Dart 라이브러리는 어떻게 활용하는지,
4. 전체 기업의 상장사/비상장사를 어떻게 구분하여 엑셀에 저장하는지,
천천히 개념과 과정을 정리해나가며
다시 복습해보는 시간을 갖도록 하겠다.
1. Dart Open API
- Open API 란, 데이터를 가져다 쓸 수 있게 서버의 ‘창구’를 열어둔 것이다.
- Dart Open API를 활용하면 공시 정보를 ‘데이터 분석’에 활용할 수 있다.
- 일일이 공시자료를 보러가지 않아도, 분석을 할 수 있다.
- 쉽게 활용할 수 있게 만든 ‘Dart FSS' 라이브러리도 있다.
2. Dart OpenAPI키 발급받기
1) API는 무엇인가
API란 서버에 접근하는 ‘창구’와 같은 것이다.
은행에도 여러가지 데이터가 있지만, 우리는 ‘창구’를 활용해서 정해진 약속으로 정해진 데이터만 접근 할 수 있다.
2) ‘키’는 왜 발급받아야 하나
누구에게나 열어둔 ‘창구’이기 때문에, 너무 많은 요청이 오면 서버가 매우 힘들다.
그래서 인 당 할당량을 정해서 ‘key’를 발급하는 것이다. 요청시 이 'key'가 항상 필요하다.
3) Dart OpenAPI 키 발급받기
- https://opendart.fss.or.kr/uat/uia/egovLoginUsr.do 페이지를 클릭한다.
- 인증키 신청을 누르고 정보를 입력하면, 누구나 쉽게 키를 발급 받을 수 있다.
- API 사용 환경은 ‘웹, 앱 모두’로 하고, 사용용도는 ‘개인 공부’라고 적는다.
- 개인 이메일에 들어가 '금융감독원 OPEN DART시스템 인증키 신청 확인 메일'에서 인증링크를 클릭한다.
- `Open API 이용현황` 에 가면, 키를 볼 수 있다.
3. Dart 라이브러리 활용하기
1) Dart-fss 라이브러리 설치하기
- 공식 Document : https://dart-fss.readthedocs.io/en/latest/](https://dart-fss.readthedocs.io/en/latest/
- Dart-fss 라이브러리는 Dart의 OpenAPI를 쉽게 사용할 수 있도록 만들어둔 코드다.
- 라이브러리를 활용하면 복잡한 개발 가이드 없이 데이터들을 얻을 수 있다.
- Colab에서 dart-fss를 설치한다.
!pip install dart-fss
2) 키 넣고, 구동하기
- API 키를 입력하고, 구동해본다.
import dart_fss as dart_fss
import pandas as pd
api_key = '여기에 API 키를 입력'
dart_fss.set_api_key(api_key=api_key)
corp_list = dart_fss.get_corp_list()
corp_list.corps
4. 종목 정리하기
1) 상장, 비상장 종목 정리하기
- Dart 공식문서 페이지 목차에서 'Open DART API'를 클릭하면 여러 정보를 볼 수 있는 코드가 있는데, 복사하여 사용하면 된다.
- 우선, 전체 종목을 보는 코드를 작성해본다.
all = dart_fss.api.filings.get_corp_code()
all
- DataFrame 형태로 볼 수도 있다.
df = pd.DataFrame(all)
df
- `stock_code` 가 있는 종목은 상장사, 없는 종목은 비상장사를 의미한다.
- 상장사 df 리스트를 불러온 후, 상장사 숫자를 세어보기위해 .count()를 이용한다.
df_listed = df[df['stock_code'].notnull()]
- 비상장사 df 리스트도 불러오고, 숫자도 세어본다.
df_non_listed = df[df['stock_code'].isnull()]
2) 엑셀로 저장해두기
- 엑셀에 상장종목과 비상장종목으로 저장한 후, 두 파일 모두 다운로드 해본다.
df_listed.to_excel('상장종목.xlsx')
df_non_listed.to_excel('비상장종목.xlsx')
'CODING > PYTHON' 카테고리의 다른 글
[Python] 3주차_DART 데이터 내 마음대로 활용하기(3편) (Feat. 스파르타코딩클럽) (1) | 2022.12.08 |
---|---|
[Python] 3주차_DART 데이터 내 마음대로 활용하기(2편) (Feat. 스파르타코딩클럽) (0) | 2022.12.08 |
[Python] 2주차_손쉽게 다루는 해외주식(2편) (Feat. 스파르타코딩클럽) (0) | 2022.12.04 |
[Python] 2주차_손쉽게 다루는 해외주식(1편) (Feat. 스파르타코딩클럽) (0) | 2022.12.01 |
[Python] 1주차_주식데이터를 활용한 파이썬 데이터 분석(2편) (Feat. 스파르타코딩클럽) (0) | 2022.11.29 |