import pandas as pd
import requests
from bs4 import BeautifulSoup
from datetime import datetime
# code 설정
code = '005930'
# 무위험이자율 계산
ke_url = "https://www.kisrating.com/ratingsStatistics/statics_spread.do"
ke_res = requests.get(ke_url)
ke_df = pd.read_html(ke_res.text)
ke = float(ke_df[0].iloc[10, 8])
# 자료를 가져오는 영역 : snapshot과 재무제표만 가져오기
snapshot_url = "http://comp.fnguide.com/SVO2/ASP/SVD_Main.asp?pGB=1&gicode=A{}&cID=&MenuYn=Y&ReportGB=&NewMenuID=101&stkGb=701".format(code)
snapshot_res = requests.get(snapshot_url)
snapshot_df = pd.read_html(snapshot_res.text)
fs_rpt_url = "http://comp.fnguide.com/SVO2/ASP/SVD_Finance.asp?pGB=1&gicode=A{}&cID=&MenuYn=Y&ReportGB=&NewMenuID=103&stkGb=701".format(code)
fs_rpt_res = requests.get(fs_rpt_url)
fs_rpt_df = pd.read_html(fs_rpt_res.text)
# 해당자료에서 NAN값을 0으로 바꾸는 작업
for i in range(len(snapshot_df)):
# snapshot_df[i] = df[i].apply(pd.to_numeric, errors = 'coerce') # 이건 매우 중요하다. 이걸 적용하면 문자로 된건 전부 Nan 값이 된다.
snapshot_df[i].fillna(0,inplace=True)
for i in range(len(fs_rpt_df)):
# fs_rpt_df[i] = df[i].apply(pd.to_numeric, errors = 'coerce') # 이건 매우 중요하다. 이걸 적용하면 문자로 된건 전부 Nan 값이 된다.
fs_rpt_df[i].fillna(0,inplace=True)
# fs_rpt_df[0] : 연결 손익계산서(연간)
# fs_rpt_df[1] : 연결 손익계산서(분기)
# fs_rpt_df[2] : 연결 손익계산서
print(fs_rpt_df[0].iloc[3, 0])
안녕하세요 파이썬 초보가 질문 드립니다.
제가 데이터를 스크랩핑하는 과정에서 숨겨진 데이터가 있어서 글을 올립니다.
코드를 실행하면 "판매비와관리비계산에 참여한 계정 펼치기" 라는 항목이 뜨는데요,
이게 실제 웹페이지에서는
"판매비와관리비 +"로 표시된 것입니다.
+버튼 눌렀을 때 나오는 자료가 필요한데 이건 어떻게 해야 가져올 수 있을까요?
답변 주시면 감사하겠습니다.
아 그리고 항상 답변 올려주시는 모든 분들께 감사드립니다.~ ^^