- kma_csv_fileWrite
import requests
import re
url = 'http://www.kma.go.kr/weather/forecast/mid-term-rss3.jsp?stnId=108'
data = requests.get(url).text
# print(data)
location_list = re.findall('<location wl_ver="3">.+?</location>',data, re.DOTALL)
f = open('./Data/kma.csv', 'w', encoding= 'utf-8')
for row in location_list:
city = re.findall('<city>(.+?)</city>',row)
data_list = re.findall('<data>(.+?)</data>', row, re.DOTALL)
for data in data_list:
tmEf = re.findall('<tmEf>(.+?)</tmEf>', data)
wf = re.findall('<wf>(.+?)</wf>', data)
tmn = re.findall('<tmn>(.+?)</tmn>', data)
tmx = re.findall('<tmx>(.+?)</tmx>', data)
# print(city[0], tmEf[0], wf[0], tmn[0], tmx[0])
line = '{},{},{},{},{}'.format(city[0], tmEf[0], wf[0], tmn[0], tmx[0])
# csv 파일에 기록 하는 방법
print(line)
f.write(line+'\n')
f.close()
print('파일에 기록 하였습니다.')
- kmaTest
# 인터넷상에서 데이터를 주고 받는 형식
# csv, xml, json
import requests
import re
url = 'http://www.kma.go.kr/weather/forecast/mid-term-rss3.jsp?stnId=108'
data = requests.get(url).text
print(data)
location_list = re.findall('<location wl_ver="3">.+?</location>',data, re.DOTALL)
# print(location_list)
# print(len(location_list))
# print("*"*50)
# print(type(location_list))
# print(location_list[0])
# 연습) province만 출력 해 봅시다.
for row in location_list:
province = re.findall('<province>(.+?)</province>',row)
print(province[0])
# 연습) city만 추출하여 출력 해 봅니다.
# 연습) data를 찾아 data의 길이를 출력 해 봅니다.
for row2 in location_list:
city = re.findall('<city>(.+?)</city>',row2)
data_list = re.findall('<data>(.+?)</data>', row2, re.DOTALL)
print(city[0],len(data_list))
for data in data_list:
tmEf = re.findall('<tmEf>(.+?)</tmEf>', data)
wf = re.findall('<wf>(.+?)</wf>', data)
tmn = re.findall('<tmn>(.+?)</tmn>', data)
tmx = re.findall('<tmx>(.+?)</tmx>', data)
print(tmEf[0],wf[0],tmn[0],tmx[0])
print('-'*50)
# f = open('./Data/kma.xml','w',encoding= 'utf-8')
# f.write(data)
# f.close()
# print('파일을 기록하였습니다.')
- kmaTest_fileSave
# 인터넷상에서 데이터를 주고 받는 형식
# csv, xml, json
import requests
import re
url = 'http://www.kma.go.kr/weather/forecast/mid-term-rss3.jsp?stnId=108'
data = requests.get(url).text
print(data)
location_list = re.findall('<location wl_ver="3">.+?</location>',data, re.DOTALL)
for row in location_list:
city = re.findall('<city>(.+?)</city>',row)
data_list = re.findall('<data>(.+?)</data>', row, re.DOTALL)
print(city[0])
for data in data_list:
tmEf = re.findall('<tmEf>(.+?)</tmEf>', data)
wf = re.findall('<wf>(.+?)</wf>', data)
tmn = re.findall('<tmn>(.+?)</tmn>', data)
tmx = re.findall('<tmx>(.+?)</tmx>', data)
print(tmEf[0],wf[0],tmn[0],tmx[0])
print('-'*50)
'Programing > Python' 카테고리의 다른 글
파이썬 크롤링 (0) | 2021.08.17 |
---|---|
5-6 파이썬 외장함수 (0) | 2021.08.17 |
5-5 파이썬 내장함수 12 (0) | 2021.08.17 |
5-5 파이썬 내장함수 11 (0) | 2021.08.17 |
5-5 파이썬 내장함수 10 (0) | 2021.08.17 |