커뮤니티
포인트
쿠폰
내 강의실
국비 신청 내역
증명서
계정
로그아웃
학습 질문
개발 일지
나의 활동
답변 완료
웹사이트에서 크롤링해서 데이터프레임을 작성하는 코드를 이상하게 작성해주는데 어떻게하죠?
undefined주차
북마크
노*태
댓글
5
추천
0
조회수
6
조회수
6
답변 완료

* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.

* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.


선생님처럼 깔끔하게 코딩안해주고 자꾸에러나는 코드만 알려주네요.

이렇게 되면 혼자할땐 엄청 헤멜거 같은데 강의노트에 있는 코드를 외워놓고 있어야할까요?






import requests
from bs4 import BeautifulSoup
import pandas as pd


def get_financial_statements(stock_code):
    # 네이버 금융 재무제표 URL
    url = f'https://finance.naver.com/item/main.naver?code={stock_code}'
    
    # HTTP 요청
    response = requests.get(url)
    response.raise_for_status()


    # HTML 파싱
    soup = BeautifulSoup(response.content, 'html.parser')


    # 재무제표 데이터가 포함된 섹션 찾기
    finance_section = soup.select_one('div.section.cop_analysis div.sub_section')
    tables = finance_section.find_all('table')


    # 각 테이블을 데이터프레임으로 변환
    data_frames = []
    for table in tables:
        df = pd.read_html(str(table), header=1)[0]
        df = df.dropna(axis=0, how='all'# 모든 값이 NaN인 행 제거
        df = df.dropna(axis=1, how='all'# 모든 값이 NaN인 열 제거
        data_frames.append(df)


    return data_frames


# 하나은행 주식 코드: '086790'
stock_code = '086790'
financial_statements = get_financial_statements(stock_code)


# 각 데이터프레임 출력
for idx, df in enumerate(financial_statements):
    print(f"Table {idx+1}:\n", df, "\n")




취소
 공유
취소
댓글 0
댓글 알림
나의얼굴