728x90
주식을 조금씩 하고 있긴 한데. 회사가 너무 많다... 내가 보고 싶은 회사만 현재가 실시간으로 받아 오도록 해봤다.
최종적으로 원하는 회사의 현재가를 실시간으로 계속 가져오게 하는 것이다.ㅎ
1. 네이버 주식 페이지 정보 불러오기
import requests
from bs4 import BeautifulSoup
url = "https://finance.naver.com/item/main.nhn?code=005930"
result = requests.get(url)
print(result.content)
알수 없는 문자가 잔뜩 나온다..
2. BeautifulSoup 데이터 가공 하기
import requests
from bs4 import BeautifulSoup
url = "https://finance.naver.com/item/main.nhn?code=005930"
result = requests.get(url)
bs_obj = BeautifulSoup(result.content, "html.parser")
print(bs_obj)
홈페이지에서 사용되는 소스가 받아 오는 것을 볼 수 있다.
3. 현재가 가져오기
홈페이지 보면 no_today 라는 속성 값이 현재가인 것을 알 수 있다.
#네이버 금융 삼성전자 데이터 수집
import requests
from bs4 import BeautifulSoup
#함수형태 변환
def get_bs_obj():
url = "https://finance.naver.com/item/main.nhn?code=005930"
result = requests.get(url)
bs_obj = BeautifulSoup(result.content, "html.parser") #html.parser 로 파이썬에서 쓸 수 있는 형태로 변환
return bs_obj
#호출
bs_obj = get_bs_obj()
#현제가 추출
no_today = bs_obj.find("p", {"class":"no_today"})
print(no_today)
class="blind" 71,400 확인 할 수 있다.
4. 가격만 가져오기
#네이버 금융 삼성전자 데이터 수집
import requests
from bs4 import BeautifulSoup
#함수형태 변환
def get_bs_obj():
url = "https://finance.naver.com/item/main.nhn?code=005930"
result = requests.get(url)
bs_obj = BeautifulSoup(result.content, "html.parser") #html.parser 로 파이썬에서 쓸 수 있는 형태로 변환
return bs_obj
#호출
bs_obj = get_bs_obj()
#현제가 추출
no_today = bs_obj.find("p", {"class":"no_today"})
blind_now = no_today.find("span", {"class":"blind"})
print(blind_now.text)
5. 여러 회사의 현재가를 무한루프를 돌려 계속 가져오기
#네이버 금융 삼성전자 데이터 수집
import requests
from bs4 import BeautifulSoup
import time
def get_bs_obj(com_code):
url = "https://finance.naver.com/item/main.nhn?code=" + com_code
result = requests.get(url)
bs_obj = BeautifulSoup(result.content, "html.parser") #html.parser 로 파이썬에서 쓸 수 있는 형태로 변환
return bs_obj
def get_price(com_code):
bs_obj = get_bs_obj(com_code)
no_today = bs_obj.find("p", {"class":"no_today"})
blind_now = no_today.find("span", {"class":"blind"})
return blind_now.text
while True:
#삼성전자 005930
print("삼성전자 현제가")
print(get_price("005930"))
print()
#셀트리온 068270
print("셀트리온 현제가")
print(get_price("068270"))
print()
#카카오 035720
print("카카오 현제가")
print(get_price("035720"))
print("=================================")
time.sleep(5)
print()
결과값
728x90
'개발공부 > Python' 카테고리의 다른 글
초등학생도 할 수 있는 머신러닝 학습 시키기 (15) | 2020.12.02 |
---|---|
파이썬으로 구글 이미지 크롤링하기(Python google crawling) (19) | 2020.12.01 |
로또 홈페이지에서 당첨번호 1회 부터 엑셀 뽑기 (14) | 2020.11.22 |
클라우드 개발 환경 구름 IDE (6) | 2020.11.21 |
파이썬 pyautogui 마우스/키보드 자동화#3 (5) | 2020.11.21 |