일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- DB #mariaDB #SQL
- jmap #jstack
- CI #CD #CI/CD
- 백준 #10430
- lenova #레노버 #노트북
- Swap Memory
- dump #jattach
- 티스토리챌린지
- bootstrap #css #CSS
- lvm #lv #vg #pv
- shell #shell script
- dify
- Python #pakage
- publishnotreadyaddress
- Linux #wc
- EFK
- NameSpace #NS
- 오블완
- Node #POD #Container
- test #비교
- PODS #POD #pods #pod #파드 #재기동 #롤링재기동 #rolling
- OCP
- istio #k8s #kubernetes
- Kafka #카프카
- 네트워크 #NW
- Excel #엑셀
- jgrp000032 #ocp #
- EKS
- function #사용자 정의 함수
- Grid #CSS
Archives
- Today
- Total
BEOM_IT
서울시 미세먼지 데이터 가져오기 본문
728x90
반응형
서울시 공공데이터 홈페이지에서 신청하면 금방 받을수 있다 개인별 서비스키를 입력 후 추출
import requests
from bs4 import BeautifulSoup
import pandas as pd
# 미세먼지 데이터 가져와서 추출 API 연습
url = 'http://apis.data.go.kr/B552584/ArpltnInforInqireSvc/getCtprvnRltmMesureDnsty'
params ={
'serviceKey' : '[이건 개인별로]',
'returnType' : 'xml',
'numOfRows' : '25',
'pageNo' : '1',
'sidoName' : '서울',
'ver' : '1.0'
}
response=requests.get(url,params=params) #REQUST로 데이터 요청하기
# print(response.text,"응답완료")
soup = BeautifulSoup(response.text, 'html.parser')
# print(soup)
ItemList=soup.findAll('item')
#데이터를 담기위한 빈 리스트들! 여기에 데이터들을 하나씩 추가해 갈겁니다!
datetimeList=[]
citynameList=[]
so2valueList=[] # 아황산가스 농도
covalueList=[] # 일산화탄소 농도
o3valueList=[] # 오존 농도
no2valueList=[] # 이산화질소 농도
pm10valueList=[] # 미세먼지(PM10) 농도
pm25valueList=[] # 초미세먼지(PM2.5) 농도
for item in ItemList:
datetime=item.find('datatime').text
cityname=item.find('stationname').text
so2value=item.find('so2value').text
covalue=item.find('covalue').text
o3value=item.find('o3value').text
no2value=item.find('no2value').text
pm10value=item.find('pm10value').text
pm25value=item.find('pm25value').text
datetimeList.append(datetime)
citynameList.append(cityname)
so2valueList.append(so2value)
covalueList.append(covalue)
o3valueList.append(o3value)
no2valueList.append(no2value)
pm10valueList.append(pm10value)
pm25valueList.append(pm25value)
print("데이터 모으기 끝!")
#데이터 합치기
# 명칭 지정 후 데이터 적재
DATA= pd.DataFrame()
DATA['time']=datetimeList
DATA['지역']=citynameList
DATA['아황산가스']=so2valueList
DATA['일산화탄소']=covalueList
DATA['오존']=o3valueList
DATA['이산화질소']=no2valueList
DATA['미세먼지(PM10)']=pm10valueList
DATA['초미세먼지(PM2.5)']=pm25valueList
DATA.to_csv("서울시_미세먼지데이터.csv",index=False,encoding="utf-8-sig")
728x90
반응형
'Language > Python' 카테고리의 다른 글
숫자야구 (0) | 2024.04.17 |
---|---|
계산기 만들기 (0) | 2024.04.09 |
웹 크롤링 - 네이버 증권정보 빼오기 (0) | 2024.04.09 |
로또 번호 추첨기 [Python] (0) | 2023.09.15 |
숫자야구 [Python] (0) | 2023.09.15 |