설치 

sudo apt-get install python-bs4

 

네이버 "날씨" 웹 크롤링

# -*- coding: utf-8 -*-
# -*- coding: euc-kr -*-
import requests 
from bs4 import BeautifulSoup

import sys # 한글 출력 안되서 
reload(sys)
sys.setdefaultencoding("utf-8")


Finallocation = '날씨'
LocationInfo = "" 
NowTemp = "" 
CheckDust = []

url = "https://search.naver.com/search.naver?where=nexearch&sm=top_hty&fbm=1&ie=utf8&query=" + Finallocation 
hdr = {'User-Agent': ('mozilla/5.0 (windows nt 10.0; win64; x64) applewebkit/537.36 (khtml, like gecko) chrome/78.0.3904.70 safari/537.36')} 
req = requests.get(url, headers=hdr) 
html = req.text 
soup = BeautifulSoup(html, 'html.parser')

# 현재
NowTemp = soup.find('span', {'class': 'todaytemp'}).text + soup.find('span', {'class' : 'tempmark'}).text[2:]

# 날씨 캐스트
WeatherCast = soup.find('p', {'class' : 'cast_txt'}).text

#자외선
TodayUV = soup.find('span', {'class' : 'indicator'}).text[4:-2] + " " + soup.find('span', {'class' : 'indicator'}).text[-2:]

# 미세먼지, 초미세먼지, 오존 지수 
CheckDust1 = soup.find('div', {'class': 'sub_info'}) 
CheckDust2 = CheckDust1.find('div', {'class': 'detail_box'}) 
for i in CheckDust2.select('dd'): 
    CheckDust.append(i.text) 

FineDust = CheckDust[0][:-2] + " " + CheckDust[0][-2:] 
UltraFineDust = CheckDust[1][:-2] + " " + CheckDust[1][-2:] 
Ozon = CheckDust[2][:-2] + " " + CheckDust[2][-2:]

print('현재온도:'+NowTemp)
print(WeatherCast)
print('자외선:'+TodayUV)
print('미세먼지:'+FineDust)
print('초미세먼지:'+UltraFineDust)
print('오존 지수:'+Ozon)

 

'Python > 웹 크롤링 & 웹 자동화' 카테고리의 다른 글

04-JSON API(NAVER)  (0) 2020.08.17
03-Selenium  (0) 2020.08.17
02-Naver Movie  (0) 2020.08.17
01-Daum News  (0) 2020.08.17
블로그 이미지

hjc_

୧( “̮ )୨

,