개요
이번에는 최근 3년간 영억이익이 흑자인 기업을 찾아보겠습니다. 앞서 진행한 코드와 크게 다른 점이 없어 간략하게 포스팅 하겠습니다.
자세한 내용은 아래 참고 부탁드립니다.
[국내주식] 최근1년간 영업이익이 발생하는 코스닥 기업 찾기(with python)
코드
#시각화 라이브러리
import matplotlib.pyplot as plt
import seaborn as sns
plt.rc('font', family='NanumGothic')
#전처리 라이브러리
from tqdm import tqdm_notebook
import pandas as pd
#크롤링 라이브러리
import requests
url = 'https://kind.krx.co.kr/corpgeneral/corpList.do'
kosdaq_code = pd.read_html(url+"?method=download&marketType=kosdaqMkt")[0]
# 코스닥 종목 업종
kosdaq_sectors = kosdaq_code[['회사명','업종','주요제품']]
# 종목코드가 int 타입이라 앞의 0이 사라짐, 다시 붙여주는 코드
kosdaq_code = kosdaq_code[['회사명','종목코드']]
kosdaq_code['종목코드'] = kosdaq_code['종목코드'].astype('str')
kosdaq_code['종목코드'] = kosdaq_code['종목코드'].map(lambda x : '00'+x if len(x) ==4 else x)
kosdaq_code['종목코드'] = kosdaq_code['종목코드'].map(lambda x : '0'+x if len(x) ==5 else x)
result = pd.DataFrame()
for index, row in tqdm_notebook(kosdaq_code.iterrows()):
try :
code = row[1]
url = f"https://finance.naver.com/item/main.nhn?code={code}"
res = requests.get(url)
df = pd.read_html(res.text)[3]
# 재무정보 인덱스 설정
df.set_index(df.columns[0],inplace=True)
df.index.rename('재무정보', inplace=True)
# 두번째 컬럼 제거
df.columns = df.columns.droplevel(2)
# 최근 분기 실적만 가져오기
quater = pd.DataFrame(df).xs('최근 연간 실적',axis=1)
# 최근 4개 분기 가져오기
df2 = quater[['2019.12','2020.12','2021.12','2022.12(E)']]
df2 = df2.reset_index()
# 매출액 가져오기
df2 = df2[df2['재무정보']=='영업이익']
# 종목명 입력
df2['재무정보'] = row[0]
result = pd.concat([result, df2])
except :
pass
#최근 3개년 데이터
result = result[['재무정보', '2019.12', '2020.12', '2021.12']]
# 수집 데이터 확인
print('코스닥 종목 데이터 : ',kosdaq_code.shape)
print('최근 3년 데이터가 있는 종목 : ',result.shape)
# 결산이 안된 분기는 -로 표시 되기 때문에 음수로 변환
result = result.replace('-', -999)
# 4개분기 모두 이익을 기록한 회사 추출
operatingp_rofit_plus= result[result['2019.12'].map(lambda x : int(x)>0) & result['2020.12'].map(lambda x : int(x)>0)& result['2021.12'].map(lambda x : int(x)>0)]
# 컬럼명 변경
operatingp_rofit_plus.columns = ['회사명', '2019.12', '2020.12', '2021.12']
# 업종 테이블과 merge
operatingp_rofit_plus = pd.merge(operatingp_rofit_plus, kosdaq_sectors, on='회사명', how='inner')
최근 3년 영억이익이 흑자인 기업
1,610개의 코스닥 기업 중 최근 1년 간 영업이익 수치가 있는 기업은 1,483개 기업이었으며, 1,483개 기업 중 최근 3년동안 영업이익이 흑자인 기업은 총 739개 기업이었습니다.
'투자 > 국내주식' 카테고리의 다른 글
[국내주식] 최근1년간 영업이익이 흑자인 코스닥 기업 찾기(with python) (0) | 2022.12.11 |
---|---|
[크롤링] 코스닥 종목 네이버 주요 재무정보 가져오기(with 파이썬) (0) | 2022.12.10 |
[국내주식] 코스피, 코스닥 종목 확인하기(with python) (1) | 2022.09.11 |