본문 바로가기

728x90

Data Science

[04. 금융감독원 API] 004. 사업보고서 주요정보 – 증자(감자) 현황 금감원 API가 개편되면서 달라진 점 중에 하나가 바로 보고서의 정보를 제공해준다는 것이다. 과거에는 공시 링크까지만 제공해주고 내용은 제공해주지 않았다. 따라서 많은 사람들이 허용하지 않는 경로로 크롤링하여 재무제표 데이터를 쌓곤 했다. 하지만 이마저도 자주 조회하다보면 금감원에서 IP를 차단시켜버렸다. 이제 공식적으로 주요 계정을 제공해주니 마음껏 활용해도 된다. 사업보고서의 증자(감자)에 대한 정보를 조회하는 API에 대해 알아보자. 위닉스의 2018년도 사업보고서의 증자(감자)현황 조회를 파이썬 코드로 작성하면 다음과 같다. import json import pandas as pd import requests def get_capital_increase_and_decrease(api_key, co.. 더보기
[04. 금융감독원 API] 003. 공시정보 – 공시검색 공시검색 API는 기업들의 공시를 검색할 수 있는 기능을 제공해준다. 특정기업이든 아니면 일자별로 등 다양하게 공시를 조회해 볼 수 있으며 특정 유형의 보고서만 검색하는 것도 가능하다. 다양한 요청인자를 통해서 원하는 방식으로 공시를 검색하는 것이 가능하다. 이를 이용해 삼성전자 사업보고서를 검색해보자. import json import pandas as pd import requests def get_announcement(api_key, code, start_dt, end_dt, op): fullUrl_ = 'https://opendart.fss.or.kr/api/list.json?crtfc_key=%s&corp_code=%s&' \ 'bgn_de=%s&end_de=%s%s' % (api_key, c.. 더보기
[04. 금융감독원 API] 002. 공시정보 – 기업개황 기업 고유번호에 대한 데이터가 있으니 기업개황에 대한 정보도 얻을 수 있다. 기업개황 API에는 요청인자에 corp_code만 추가로 입력하면 된다. 삼성전자의 기업 고유코드는 00126380이므로 이를 대입해서 코드를 작성하면 다음과 같다. import json import pandas as pd import requests def get_company_info(api_key, code): url = 'https://opendart.fss.or.kr/api/company.json?crtfc_key=%s&corp_code=%s' % (api_key, code) response = requests.get(url) result = response.text result = json.loads(result) r.. 더보기
[04. 금융감독원 API] 001. 공시정보 – 고유번호 금융감독원 API가 전면 개편되었다. 공시정보, 사업보고서 주요정보, 상장기업 재무정보, 지분공시 종합정보로 더욱 세분화되고 더 많은 데이터를 제공하기로 했다. 전자공시 OPENDART 시스템 | 개발가이드 조회중입니다. 잠시만 기다려주세요. opendart.fss.or.kr 위 사이트에 접속해서 인증키를 신청해서 발급받으면 API를 사용할 수 있다. 기존의 공시API와 비교하여 불편한 점은 기존의 종목코드를 Input값으로 넣지 않고 기업의 고유번호를 입력하게 바뀌었다. 비상장기업까지 조회할 수 있게 하기 때문인 것 같다. 따라서 제일 먼저 해야할 일은 기업의 고유번호를 알아내는 일이다. 응답 방식이 zip – FILE(Stream) 방식이다. 압축파일로 제공한다는 뜻이다. 이를 파이썬으로 구현하는 방.. 더보기
[03. API] 002. FinanceDataReader FinanceDataReader는 한국, 미국 글로벌 시장의 금융상품 가격 데이터(주식, 지수, 환율, 선물 등)와 종목 리스팅 등 금융 데이터 수집과 분석을 위한 오픈소스 라이브러리이다. 설치는 아래와 같이 하면 된다. pip install finance-datareader 1) 거래소별 상장 종목 리스트 - 한국: KRX(전체, KOSPI + KOSDAQ + KONEX), KOSPI, KOSDAQ KONEX, KRX-DELISTING(상장폐지) - 미국: NASDAQ, NYSE, AMEX, S&P500 거래소별 상장 종목 리스트는 다음과 같이 작성한다. import FinanceDataReader as fdr if __name__ == '__main__': # 한국거래소 상장종목 전체 krx = fd.. 더보기
[03. API] 001. Pandas Datareader 네이버나 야후에서 주가데이터를 크롤링하는 방법을 배웠다. 이 과정을 하나로 묶어서 제공해주는 파이썬 라이브러리(pandas_datareader)가 존재한다. 아래와 같이 설치하면 된다. pip install pandas_datareader import pandas_datareader.data as web if __name__ == '__main__': data = web.DataReader(['005930.KS', 'AAPL'], "yahoo", '2018-01-01', '2019-01-10') print(data) 결과 값 Attributes Adj Close ... Volume Symbols 005930.KS AAPL ... 005930.KS AAPL Date ... 2018-01-02 NaN 167.. 더보기
[02. 웹크롤링] 004. 38커뮤니케이션 – IPO 데이터 38커뮤니케이션은 장외주식, IPO 등 다양한 정보를 제공한다. 이 사이트를 통해서 IPO 예정인 기업들을 크롤링해보도록 하자. 비상장주식,장외주식시장 NO.1 38커뮤니케이션 종목명 청구일 자본금(백만) 매출액(백만) 순이익(백만) 심사청구가(원) 위더스제약 12/19 1,550 51,732 8,661 에이비온 12/18 6,917 800 -7,789 캠시스글로벌 12/18 10,001 0 0 엘에스이브이코리아 12/16 18,313 56,055 2,296 신도기연 12/12 3,361 48,854 3,189 종목명 승인일 자본금(백만) 순이익(백만) 주요제품 센코어테크 01/09 2,919 11,029 철근선조립기둥, 강구조 www.38.co.kr IPO/공모 탭을 클릭해보면 승인종목, IR일정, 수.. 더보기
[02. 웹크롤링] 003. 야후 파이낸스 프랑스 – 주가 데이터 야후 파이낸스 프랑스(https://fr.finance.yahoo.com/) 주가 데이터를 크롤링하는 것은 조금 다르다. 왜냐하면 주가 데이터를 조회 후 스크롤하면 데이터가 자동으로 계속 보이는 방식이기 때문이다. 원하는 데이터 기간을 조회 후 스크롤하지 않으면 모든 데이터가 나오지 않는다. 이 문제를 해결하기 위해서는 selenium 라이브러리를 사용해야 한다. pip install selenium 그리고 크롬 드라이브를 다운로드 한다. Downloads - ChromeDriver - WebDriver for Chrome WebDriver for Chrome sites.google.com 자신의 크롬에 맞는 버전을 다운받으면 된다. 크롬에서 도움말 – Chrome 정보에 버전이 나와있다. 크롤링 대상이.. 더보기
[02. 웹크롤링] 002. 야후 파이낸스 일본 – 주가 데이터 글로벌 시대에 해외투자가 늘어남에 따라 해외주식에 대한 데이터 가공도 중요한 시대이다. 야후 파이낸스 재팬에서 일본 주식 주가 데이터를 크롤링 해보자. Yahoo!ファイナンス - 株価やニュース、企業情報などを配信する投資・マネーの総合サイト 【ご注意】 市場を特定したい場合は、銘柄コードに続けて拡張子(例:4689.t)をつけてください。各市場の拡張子、詳細についてはこちらをご覧ください。 チャートについては、株式分割などがあった場合は分割日以前の取引値についてもさかのぼって修正を行っております。 前日比については、権利落ちなどの修正を行っておりません。 取引値は、東証、福証、札証はリアルタイムで、他市場は最低20分遅れで更新しています。全市場(東証、福証、札証も含む)の出来高・売買代金に関しては、最低20分遅れで表示しています。株式分割があっ finance.y.. 더보기
[02. 웹크롤링] 001. 네이버 – 주가 데이터 네이버는 국내 최대 포털 사이트이다. 주식 및 부동산 등 여러가지 정보를 제공해주고 있다. 네이버의 주가 데이터를 웹크롤링하는 방법에 대해 알아보자. 네이버에서 삼성전자 주가 데이터를 한 번 보자 네이버 금융 국내 해외 증시 지수, 시장지표, 펀드, 뉴스, 증권사 리서치 등 제공 finance.naver.com 스크롤을 내리면 일별시세란 부분이 보인다. 이 부분을 바로 우리가 크롤링할 것이다. 일별시세의 주소는 다음 주소에서 더욱 깔끔하게 볼 수 있다. 네이버 금융 finance.naver.com 구조를 살펴보면 10개의 데이터씩 일별로 보여준다. 제공하는 데이터는 날짜, 종가, 전일비, 시가, 고가, 저가, 거래량이다. 페이지에서 마우스 오른쪽 버튼을 눌러 소스 보기로 들어가면 다음과 같이 웹의 언어로.. 더보기
728x90