본문 바로가기

Python59

[API 다루기] XML > JSON > dataframe 변환하기 👾 공공데이터 포털의 부동산 실거래가 자료를 가져와보자. requests, pandas 두 개의 라이브러리를 import 인증키와 페이지번호, 페이지당 결과수, 지역코드, 계약 월은 format 문자열로 처리하여 유동적으로 선택할 수 있게 한다. url 기본형을 문자열로 입력하고, 위의 항목들을 { } 안에 넣어 포맷팅한다. req 에 url로부터 xml 데이터 요청하고, req.text로 이를 확인한다. import requests import pandas as pd serviceKey = "인증키" pageNo = 1 # 페이지 번호 numOfRows = 1000 # 한 페이지 결과수 LAWD_CD = 11560 # 지역코드 DEAL_YMD = 202307 # 계약월 url = f'http://ope.. 2023. 8. 7.
[API 활용] xml 파일 데이터프레임으로 변환 (read_xml) xml 파일 ▶︎ pandas 데이터프레임으로 서울시 열린데이터 광장 API 를 가지고 예제 진행 원하는 컬럼들만 가져와서 처리가 편한 pandas dataframe으로 변환 read_xml 메서드로 쉽게 xml 파일을 변환할 수 있음 원하는 컬럼을 지정하고, 컬럼명도 바꿔준다 결측치가 있는 경우, 이를 제외하고 인덱스를 리셋 import pandas as pd import xml.etree.ElementTree as ET import requests url = "http://openapi.seoul.go.kr:8088/인증키/xml/tbLnOpendataRtmsV/1/5/" response = requests.get(url) df = pd.read_xml(response.content) select_c.. 2023. 8. 7.
[API 다루기] XML 파일을 pandas 데이터프레임으로 XML 파일을 pandas 데이터프레임으로 만들기 🧑🏻‍💻 코드 해석 url 변수에 주어진 URL로 HTTP 요청을 보내고, 그에 대한 응답을 response 변수에 저장 ET.fromstring(response.content)를 사용하여 response 변수에 저장된 XML 데이터를 ElementTree 객체로 파싱 data_list라는 빈 리스트를 만들기 >> 이 리스트는 나중에 데이터프레임을 만들기 위해 각 행을 딕셔너리 형태로 담을 것 root.findall('.//item')를 사용하여 XML 데이터에서 'item'라는 태그의 모든 요소들을 찾기 각 item 태그에서 필요한 정보를 추출하여, data 딕셔너리에 저장 data_list에 모든 행에 해당하는 딕셔너리들이 저장됨 pd.DataFram.. 2023. 8. 7.
[API 다루기] XML 데이터를 pandas 데이터프레임으로 앞 포스팅에서 다룬 동일한 데이터를 xml 파일로 불러왔다. xml 파일을 pandas 데이터프레임으로 변환하는 법을 알아보자. 🧑🏻‍💻 코드 해석 1. requests.get(xml_url)를 사용하여 주어진 URL로 HTTP 요청을 보내고, 그에 대한 응답을 req 변수에 저장 2. BeautifulSoup(req.text, "lxml")를 사용하여 req 변수에 저장된 XML 데이터를 BeautifulSoup 객체로 파싱 3. find_all 메서드를 사용하여 'stddate' 태그와 'timeavg' 태그를 모두 찾기 4. zip 함수를 사용하여 'stddate_list'와 'timeAvg_list'를 동시에 순회하면서 해당 태그들의 텍스트 값을 가져와 'stddate'와 'avgTime' 리스트.. 2023. 8. 7.
[API 다루기] JSON 데이터를 pandas 데이터프레임으로 API 데이터 찾기 본 예제에서는 한국도로공사 고속도로 공공데이터 포털을 이용해본다. http://data.ex.co.kr/dataset/datasetList/list?pn=1&CATEGORY=TR&GROUP_TR=TIME_TCS 2023. 8. 7.
[Django] 엑셀 데이터 출력 페이지 만들기(부록) - 결과값을 표로 깔끔하게 보여주기(pandas dataframe > django) 웹페이지에 엑셀 데이터의 값들을 요약해서 보여주는 것까지 완성했다. 그런데 좀 더 가독성있게 표로 제시하는 방법도 찾아보았다.👀 여기서는 pandas 데이터프레임을 django에서 html에 표시되게 하는 방법을 살펴본다. 1. result 함수 수정 calculate > views.py > calculate 함수 수정 기본적으로 result 함수에 출력되는 결과값을 데이터프레임으로 변환하고, 세션에 저장해야한다. 이를 위해 calculate 함수를 먼저 수정한다. grade 별 value 통계량 요약 groupby 함수를 사용 : grade 컬럼을 기준으로, value 값에 min, max, mean 함수를 적용 index를 새로고침하고, 컬럼 값을 재지정 깔끔한 출력을 위해 min, max, mean.. 2023. 8. 3.
__init__ 메서드란? __init__ 이란? 파이썬에서 클래스의 생성자 메서드를 표현하는 특별한 메서드이다 클래서를 인스턴스화(객체 생성) 할 때 자동으로 호출되는 메서드로, 객체의 초기 상태 설정이나 초기화하는 데 사용된다 클래스, 객체, __init__ 의 관계 클래서는 객체를 생성하는 일종의 템플릿으로 볼 수 있다 여기서 __init__ 메서드는 객체가 생성 될 때, 각 객체의 속성을 초기화하는 역할을 한다 🧐 예시 코드를 보자! class MyClass: def __init__(self, arg1, arg2, ...): # 초기화 코드 self.arg1 = arg1 self.arg2 = arg2 # ... self 는 클래스의 인스턴스 자체를 가르키는 특별한 매개변수이다 self 를 통해 클래스의 속성에 접근하고 수정.. 2023. 8. 3.
try-except 구문 try-except 구문이란? try-except 구문은 파이썬에서 예외 처리를 할 때 사용되는 중요한 구문이다 프로그램을 실행하는 동안 발생할 수 있는 예외(오류)를 예측하고 이를 처리하기 위해 사용됨 프로그램이 비정상적인 상황에서도 중단되지 않고 계속 실행될 수 있도록 함! 실행되는 순서 try 블록 내에서 예외가 발생하면, 해당 예외를 처리하기 위해 except 블록이 실행됨 예시 코드(1) try: # 예외가 발생할 수 있는 코드 result = some_function() # some_function()은 어떤 함수라고 가정합니다. print("결과:", result) except SomeException: # SomeException은 어떤 예외 클래스라고 가정합니다. # 예외 처리 코드 pr.. 2023. 8. 1.
[파이썬] 필요한 라이브러리 관리/한 번에 설치하기 🧐 왜 필요할까? - 라이브러리를 한번에 관리할 수 있으며, - 프로젝트별로 라이브러리 버전도 지정하여 관리 가능 1. 1. 프로젝트 하위에 requirements 파일 생성 파일명 : requirements.txt 설치할 라이브러리 이름을 파일에 기입 : 예) django 버전 명시 가능 예) django==(버전) 2. 라이브러리 설치 명령어 라이브러리 설치 명령어 : $ pip install -r requirements.txt 3. 설치 완료 2023. 7. 27.
728x90