23.02.05

박무연·2023년 2월 5일
0

🟣EDA

목록 보기
5/9
post-thumbnail

Self Oil Station Prcie Analysis

1. Selenium 설치

from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Chrome(위치)
driver.get(주소)

2. 셀프주요소가 정말 저렴한가?

- 데이터 확보하기 위한 작업

- https://www.opinet.co.kr/user/main/mainView.do
- 사이트 구조확인
- 목표 데이터
    - 브랜드
    - 가격
    - 셀프 주유 여부
    - 위치

3. 셀레니움 접근하기

- 그냥 get을 해버리면 안나온다!

- 한번더 get을 해주어야 한다!

- 팝업창이 뜬다면??

  • 닫아주고 실행해야한다
# 팝업창으로 전환
driver.switch_to.window(driver.window_handles[-1])

# 팝업창 닫아주기
driver.close()
  • 팝업창으로 전환시키고 닫아준다
  • 그리고 다시 get을 실행해주면 원하는 창으로 이동!

- 데이터 다운받기

  • 구를 변화 시키면서 창을 열고 엑셀파일을 실행
  • 구를 가져올 수 있는 태그를 찾고 리스트에 넣어서 반복문을 실행
  • 조심해야할점!!!!
    - value 값을 봐라!!!
    - 칸이 변하는 value 값이 서울이 아니다! 서울 특별시를 입력해야 변하니깐 서울 특별시를 입력해주어여 한다!!!

4. 데이터 정리하기

- 형식이 같은 엑셀파일 불러오기

# 파일 목록 한번에 가져오기
glob('../data/지역_*.xls')
# 위치와 반복되는 파일명을 입력

- 엑셀 리스트에 넣어주기

# 정보를 넣을 리스트
tmp_raw = []

# 반복문으로 append 하기
for file_name in staion_files:
    tmp = pd.read_excel(file_name, header=2)
    tmp_raw.append(tmp)
  • tmp_raw[0] 출력

  • tmp_raw 출력

  • 그냥 [데이터 프레임, 데이터 프레임, 데이터 프레임, ...] 이렇게 생각하자!

- 하나의 데이터 프레임 만들기

  • 형식이 동일하고 연달아 붙이기만 하면 될 때는 concat 명령을 사용
  • 밑으로 추가 추가 추가
station_raw = pd.concat(tmp_raw)

- 다 스킵하고!!!

  • 어떤 벨류가 있는지 확이하고 싶을때!!!!!!!
unique()!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 기억하자!!!!

- 타입 변경

  • 계산에 사용해야 할 값이 숫자가 아닐때, 혹은 타입을 변경하고 싶을때!
station['가격'] = station['가격'].astype('float')
profile
Easy day!

0개의 댓글