본문 바로가기

코딩

파이썬 Dart에서 영문 기업명 불러오기

0. 오랜만에 코딩 카테고리에 글을 쓴다. 별건 아니고 코드도 대충 루프 돌리는 것이긴 한데, 켜놓고 다른 거 하다 보면 끝나니까 뭐 필요한 사람이 있을 수도...? 
 
1. 공식 영문 기업명 리스트를 가져오고 싶었는데, 제공하는 곳을 못 찾아서 작성한 코드, 사용한 패키지는 아래와 같다.
 

import re, os, requests
import pandas as pd
import dart_fss as dart
from bs4 import BeautifulSoup

 
기본적인 세팅
 

api = 'xxx'
dart.set_api_key(api_key=api)
cwd = os.getcwd()
url = 'https://opendart.fss.or.kr/api/company.xml?'
df = pd.DataFrame(columns=['기업명','영문기업명','종목코드','법인등록번호','사업자등록번호','업종코드'])

 
 
다트에서 제공되는 기업 목록 불러와서 전부 루프로 돌린다. 다 돌릴 필요가 없으면 리스트만 수정해서 넣어주면 될 듯
 

corp_list = dart.get_corp_list()


for corp in corp_list:

    corp_code = re.search(r'\[([^\[\]]*)\]', str(corp))
    # [000000]기업명 형식이라 작성, 코드만 넣을 때는 필요 없음

    if corp_code:

        corp_code = corp_code.group(1)
        response = requests.get(f'{url}crtfc_key={api}&corp_code={corp_code}')
        soup = BeautifulSoup(response.text,'lxml')

        corp_name = soup.find('corp_name').text
        corp_name_eng = soup.find('corp_name_eng').text
        stock_code = soup.find('stock_code').text
        jurir_no = soup.find('jurir_no').text
        bizr_no = soup.find('bizr_no').text
        induty_code = soup.find('induty_code').text

        df.loc[len(df)] = {
                '기업명': corp_name,
                '영문기업명': corp_name_eng,
                '종목코드':stock_code,
                '법인등록번호':jurir_no,
                '사업자등록번호':bizr_no,
                '업종코드': induty_code
            }
    else:

        corp_name = 'Error'
        corp_name_eng = 'Error'
        stock_code = 'Error'
        jurir_no = 'Error'
        bizr_no = 'Error'
        induty_code = 'Error'

        df.loc[len(df)] = {
                '기업명': corp_name,
                '영문기업명': corp_name_eng,
                '종목코드':stock_code,
                '법인등록번호':jurir_no,
                '사업자등록번호':bizr_no,
                '업종코드': induty_code
            }


결과는 다음과 같다.

 
혹시 그냥 다운로드 가능한데 제가 뻘짓한 거라면 좀 알려주세요, 끝

3. 하지만 뻘짓이었습니다.
거래소 정보데이터시스템 - 주식 - 전 종목 기본정보에 다 있었다.

http://data.krx.co.kr/contents/MMC/MAIN/main/index.cmd

KRX 정보데이터시스템

증권·파생상품의 시장정보(Marketdata), 공매도정보, 투자분석정보(SMILE) 등 한국거래소의 정보데이터를 통합하여 제공 서비스

data.krx.co.kr


반응형