import requests
from bs4 import BeautifulSoup
from openpyxl import load_workbook
# 엑셀 파일 불러오기
file_path = r"C:\Users\PC\Desktop\python work space\기업 밸류에이션 통합 문서 (크롤링ing).xlsx"
wb = load_workbook(file_path)
ws = wb["요약"] # "요약" 시트 선택
# 종목 코드 리스트
codes = [
'000990', # DB하이텍
'257720', # 실리콘투
'137400', # 피엔티
'340570', # 티앤엘
'114840', # 아이패밀리에스씨
'108320', # LX세미콘
'335890', # 비올
'018290', # 브이티
'099430', # 바이오플러스
'200670', # 휴메딕스
'278470', # 에이피알
'003230', # 삼양식품
'192820', # 코스맥스
'214450', # 파마리서치
'214150', # 클래시스
'443060', # HD현대마린솔루션
'403870' # HPSP
]
# D4~D20에 시가총액 입력
for i, code in enumerate(codes):
url = f"https://finance.naver.com/item/sise.naver?code={code}"
response = requests.get(url)
if response.status_code == 200:
html = response.text
soup = BeautifulSoup(html, 'html.parser')
# 시가총액 가져오기
market_cap_tag = soup.select_one('#_sise_market_sum')
if market_cap_tag:
market_cap = int(market_cap_tag.text.replace(',', '').replace('\t', '').replace('\n', ''))
else:
market_cap = None
# D4부터 D20까지 채우기
ws[f"D{4 + i}"] = market_cap
else:
print(f"종목 코드: {code}, 데이터를 가져오지 못함 (HTTP {response.status_code})")
print("파일이 저장되었습니다")
print(f"파일경로: {file_path}")
# 변경 사항 저장
wb.save(file_path)
wb.close()