updated_at: 2024-12-15 07:29

krx 상장사정보 가져오기

https://kind.krx.co.kr/corpgeneral/corpList.do 을 크롤링하는 예제

 pandas as pd

class Krx():
  def __init__(self, parent=None):
    super().__init__()

  def updateCorp(self):
    url = 'https://kind.krx.co.kr/corpgeneral/corpList.do'  # 1

    kosdaq = pd.read_html(url + "?method=download&marketType=kosdaqMkt")[0]  # 2
    kospi = pd.read_html(url + "?method=download&marketType=stockMkt")[0]  # 3
    kosdaq.종목코드 = kosdaq.종목코드.astype(str).apply(lambda x: x.zfill(6))
    kospi.종목코드 = kospi.종목코드.astype(str).apply(lambda x: x.zfill(6))
    kosdaq['market'] = 'KQ'
    kospi['market'] = 'KS'

    stocks = kospi.append(kosdaq)  # kospi 뒤로 kosdaq dataframe을 합친다.
    stocks.sort_values(by="상장일", ascending=False)
    stocks = stocks.rename(
      columns={
        '회사명': 'comp_name',
        '종목코드': 'code',
        '업종': 'industry',
        '주요제품': 'products',
        '상장일': 'listed_at',
        '결산월': 'sett_month',
        '대표자명': 'ceo',
        '홈페이지': 'url',
        '지역': 'region'
      })

    stocks = stocks.where((pd.notnull(stocks)), None)

    for row in stocks.itertuples():
      # market, code, comp_name, industry, products, listed_at, sett_month, ceo, url, region
      print(row[10], row[2], row[1], row[3], row[4], row[5], row[6], row[7], row[8], row[9])

if __name__ == "__main__":
  krx = Krx()
  krx.updateCorp()  # 상장사 정보 업데이트

결과

....................
KQ 078940 코드네이처 전기 및 통신 공사업 전기공사업 2004-08-27 12월 김호일, 최동철(각자 대표) http://codenature.com 서울특별시
KQ 080530 코디 기타 화학제품 제조업 화장품제조,LCD A/S 2010-01-05 12월 김종원, 구자형 (각자 대표이사) http://www.kodi-s.com 경기도
KQ 123410 코리아에프티 자동차 신품 부품 제조업 캐니스터,플라스틱필러넥,의장부품 2010-08-27 12월 오원석, 김재산(각자 대표이사) http://www.kftec.com 경기도
....................

Table of contents 목차

평점을 남겨주세요
평점 : 5.0
총 투표수 : 1

질문 및 답글