실시간 평단가 이격 확인
네이버 금융에서 실시간으로 업데이트되는 검색 상위 종목을 기반으로
현재가 대비 당일 평단가의 이격을 실시간으로 추출해보자.
작업 순서
- 해당 웹사이트에 접속 후 종목명, 종목코드 추출
- 각 종목의 거래량 및 거래대금 추출 후 평단가 계산
- 현재가 대비 평단가의 이격 계산
- 루프 설정
- 특정 수치 이상의 이격 발생 시 색상 입히기
파이썬 코드
from bs4 import BeautifulSoup
import requests
class bcolors:
CHECK = "\033[32m"
ENDC = "\033[0m"
BOLD = "\033[1m"
UNDERLINE = "\033[4m"
while True:
sess = requests.Session()
adapter = requests.adapters.HTTPAdapter(pool_connections=100, pool_maxsize=100)
sess.mount('http://', adapter)
headers = {
"User-Agent": 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36 OPR/67.0.3575.115'}
URL = f'https://finance.naver.com/sise/lastsearch2.nhn'
page = sess.get(URL, headers=headers)
soup = BeautifulSoup(page.content, 'html.parser', from_encoding="utf8")
stocks = soup.findAll('a', class_='tltle')
popular_stocks = []
for stock in stocks:
link = stock.attrs['href']
popular_stocks.append(link[-6:])
# popular_stocks = popular_stocks[:1]
for item in popular_stocks:
headers = {
"User-Agent": 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36 OPR/67.0.3575.115'}
URL = f'https://finance.naver.com/item/main.nhn?code={item}'
page = sess.get(URL, headers=headers)
soup = BeautifulSoup(page.content, 'html.parser', from_encoding="utf8")
company = soup.find('div', class_='wrap_company').find_next().find_next().text
current = int(soup.find('p', class_='no_today').find_next().find_next().text.replace(',',''))
volume = soup.find('span', class_='sptxt sp_txt9').find_next().find_next()
amount = soup.find('span', class_='sptxt sp_txt10').find_next().find_next()
snoopy = int(amount.text.replace(',',''))/int(volume.text.replace(',',''))*1000000
upward = (round(((current/snoopy)-1)*100, 2))
if int(upward) > 3:
print(f'{company} > 현재가: {current} 평단가 대비: {bcolors.BOLD}{bcolors.CHECK}{upward}%{bcolors.ENDC}{bcolors.ENDC}')
else:
print(f'{company} > 현재가: {current} 평단가 대비:{upward}%')
실행 화면
특정 수준 이상의 이격 발생 시 색상을 입힐 수 있다.
장 중 검색 상위 종목을 실시간으로 확인 가능하다.
728x90
'플그래밍 > 파이써언' 카테고리의 다른 글
[파이썬 기초] Regular Expression 알아보기 (0) | 2021.05.21 |
---|---|
[파이썬] 17. 유튜브 영상 파일로 다운받기 (0) | 2021.05.13 |
[파이썬] 015. 마지막으로 발생하는 문자 INDEX 찾기 (0) | 2021.04.30 |
[파이썬] 014. KOSPI 지수 차트 이미지 저장 (0) | 2021.04.29 |
[파이썬] 013. YouTube 채널 최근 영상 목록 추출 (0) | 2021.04.23 |