본문 바로가기

Study_note(zb_data)/EDA

(18)
Python Selenium wait 📌 selenium 웹 크롤링 wait 옵션 - 웹 크롤링 시도할 때, time 옵션을 많이 사용했었는데 불필요한 시간 낭비를 줄여준 옵션 - 로딩이 끝나면 다음 동작을 바로 수행한다. from selenium.webdriver.support.ui import WebDriverWait as wait from selenium.webdriver.support import expected_conditions as EC 🔻 기존 코드 예시 driver.find_element(By.CSS_SELECTOR, f"#body1 > tr:nth-child({n}) > td.rlist > a").click() 🔻적용 코드 예시 - 최대 10초 기다리고, 로딩 후 바로 이어서 click을 수행한다. wait(driver, ..
스터디 노트 (인구 데이터 분석하기 2) 📌 Population Data Analyst 🚩 목표 데이터 인구 소멸 위기 지역 파악 인구 소멸 위기 지역 지도 표현 지도 표현에 대한 카르토그램 표현 🚩 엑셀 맵 가져오기 draw_korea_raw = pd.read_excel("../data/07_draw_korea_raw.xlsx") draw_korea_raw 🚩 stack으로 재 정비 multi index로 값을 정리 draw_korea_raw_stacked = pd.DataFrame(draw_korea_raw.stack()) draw_korea_raw_stacked draw_korea_raw_stacked.reset_index(inplace=True) draw_korea_raw_stacked >>>> draw_korea_raw_stacked...
스터디 노트 (인구 데이터 분석하기 1-2) 📌 Population Data Analyst 🚩 목표 데이터 인구 소멸 위기 지역 파악 - 진행중 인구 소멸 위기 지역 지도 표현 지도 표현에 대한 카르토그램 표현 🚩 지도 시각화를 위한 지역별 ID 만들기 ex) 강원도 강릉시 - 강릉 / 중복되는 고성, 중구 등 - 서울 중구, 고성(경남) si_name = [None] * len(pop) # 264개의 None data를 si_name에 할당 si_name >>>> [None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, ... None] 🚩 1. 일반 시 이름과 세종시, 광역시도 일반 구 정리 for idx, row in pop.iterrow..
스터디 노트 (인구 데이터 분석하기 1) 📌 Population Data Analyst 🚩 목표 데이터 인구 소멸 위기 지역 파악 인구 소멸 위기 지역 지도 표현 지도 표현에 대한 카르토그램 표현 🚩 기본 세팅 import numpy as np import pandas as pd import matplotlib.pyplot as plt import set_matplotlib_hangul import warnings # 경고 문구를 무시해달라 warnings.filterwarnings(action = "ignore") %matplotlib inline 🚩 fillna() datas = { "A": np.random.randint(1, 45, 8), "B": np.random.randint(1, 45, 8), "C": np.random.randin..
스터디 노트 (prephet 활용해서 예측하기) 📌 prephet 활용하여 예측해보자 pandas-datareader, prophet 설치 conda install pandas-datareader pip install prophet 📌 prephet 기초 import pandas as pd import numpy as np import matplotlib.pyplot as plt %matplotlib inline time = np.linspace(0, 1, 365*2) # 0~1 까지 730개의 데이터로 쪼갠다 result = np.sin(2*np.pi*12*time) ds = pd.date_range("2021-01-01", periods=365*2, freq="D") # freq = Day, period = 기간 df= pd.DataFrame({"..
스터디 노트 (BeautifulSoup + selenium 2) 📌 BeautifulSoup + selenium 🚩 목표 데이터 브랜드 가격 셀프 주유 여부 위치 🚩 Excel data 접근하기 (glob) glob("../경로/파일이름_* ") ex) 지역_* : '지역_' 포함된 파일 다 가져오기 import pandas as pd from glob import glob # 파일 목록 한 번에 가져오기 glob("../data/지역_*.xls") >>>> ['../data\\지역_위치별(주유소) (1).xls', '../data\\지역_위치별(주유소) (10).xls', '../data\\지역_위치별(주유소) (11).xls', '../data\\지역_위치별(주유소) (12).xls', '../data\\지역_위치별(주유소) (13).xls', '../data\\..
스터디 노트 (BeautifulSoup + selenium) 📌 BeautifulSoup + selenium https://www.opinet.co.kr/searRgSelect.do 싼 주유소 찾기 오피넷 www.opinet.co.kr 🚩 목표 데이터 브랜드 가격 셀프 주유 여부 위치 🚩 selenium 으로 접근하기 ### selenium으로 접근 from selenium import webdriver url = 'https://www.opinet.co.kr/searRgSelect.do' driver = webdriver.Chrome() driver.get(url) 🚩 팝업창 화면 전환 후 닫아주는 방법 - 재요청 # 팝업창 화면 전환 후 닫아주기 import time url = 'https://www.opinet.co.kr/searRgSelect.do' dri..
스터디 노트 (Slenium 파악하기) 📌 Slenium 파악하기 🚩 selenium link https://www.selenium.dev/documentation/ The Selenium Browser Automation Project Selenium automates browsers. That's it! www.selenium.dev https://selenium-python.readthedocs.io/index.html Selenium with Python — Selenium Python Bindings 2 documentation Note This is not an official documentation. If you would like to contribute to this documentation, you can fork this..