728x90
- python으로 requests와 BeautifulSoup 라이브러리를 사용하여 네이버 증권 페이지에서 주식 정보를 가져오는 아주 간단한 예제입니다.
- chatGPT 4.0 / pycharm community edition 2024.2.1 / python 3.12 버전으로 진행하였습니다.
- stockinfo 프로젝트 생성
=> stockinfo.py 파일 생성
- 라이브러리(requests, beautifulsoup4) 설치
pip install requests beautifulsoup4
//터미널이나 커맨드 라인에서 위 명령어를 실행
- 이제 파이썬 코드로 네이버 증권 데이터를 크롤링해보겠습니다.
- 예시로 삼성전자(005930) 주식 정보를 가져오는 코드를 작성해보겠습니다.
import requests
from bs4 import BeautifulSoup
# 네이버 증권 삼성전자 종목정보 페이지 URL
url = 'https://finance.naver.com/item/main.nhn?code=005930'
# HTTP GET 요청을 보내고 응답을 받음
response = requests.get(url)
# 응답의 HTML 내용을 파싱
soup = BeautifulSoup(response.text, 'html.parser')
# 주가 정보를 담고 있는 태그 탐색
price_tag = soup.find('p', class_='no_today')
price = price_tag.find('span', class_='blind').text
# 회사 이름을 담고 있는 태그 탐색
name_tag = soup.find('div', class_='wrap_company')
name = name_tag.find('h2').text
# 회사 이름과 현재 주가 출력
print(f"회사 이름: {name}")
print(f"현재 주가: {price}원")
위 코드는 다음과 같은 과정을 거칩니다:
- requests.get(url)을 사용하여 네이버 증권 페이지에 HTTP GET 요청
- BeautifulSoup을 사용하여 응답의 HTML 내용을 파싱
- find 메서드를 사용하여 주가 정보와 회사 이름을 포함하는 HTML 태그를 탐색
- text 속성을 사용하여 태그 내의 텍스트를 추출
- 추출한 정보를 출력
- 실행 결과
- 이를 응용하여 발전시키면 다양한 종목정보들을 불러와 모니터링하는 프로그램도 충분히 가능해보입니다.
728x90