[python] 파이썬 스크레이핑으로 환율정보 가져오기

finance.naver.com/marketindex/

 

https://finance.naver.com/marketindex/

환전 고시 환율 2020.11.04 16:05 하나은행 기준 고시회차 1019회

finance.naver.com

 

위의 사이트에 접속하면 아래와 같은 화면을 볼 수 있습니다.

위의 사진에서 빨간박스 안의 내용들만 가져와서 프로그램 실행시 번호를 입력받아 입력받은 번호에 맞는 정보를 출력해보겠습니다.


실행화면


코드

import urllib.request 
import urllib.parse as parse
from bs4 import BeautifulSoup

3개 라이브러리 import


url = "https://finance.naver.com/marketindex/"

html = urllib.request.urlopen(url).read()
soup = BeautifulSoup(html,'html.parser')

url지정 및 태그 저장


result = soup.select("h3.h_lst > span.blind")
value = soup.select("span.value")

개발자 도구(f12)로 내용을 확인해보면 <h3.h_list> 태그 내에 <span.blind>태그 내에 내용이 들어있는것을 확인할 수 있습니다. 미국USD말고 다른것들도 다 똑같은 태그와 클래스를 사용하기 때문에 select() 메소드를사용해 list로 result 변수에 저장해줍니다.

값이 들어있는 태그는 페이지를 통틀어서 <span.value>태그를 사용하기때문에 계층형으로 나누지 않아도 됩니다.
받아온 value를 value 변수에 저장합니다.


while True:
    select = int(input("금융번호를 입력하세요(0~11): "))
    
    for i in range(0, 12):
        if i == select:
            print(result[i].string,": ",value[i].string)

숫자로 입력 받기때문에 int(input()을 사용해 입력을 받습니다.

for문을 사용해 0~11 까지 번호를 입력받습니다 ( 12 이전까지 )
result[i], value[i]를 string으로 변환해 출력합니다.

 

댓글

Designed by JB FACTORY