PROGRAMMING/Python
-
Selenium으로 크롤링하기PROGRAMMING/Python 2021. 5. 11. 14:37
크롤링은 크게 두가지 방법을 사용해서 행할 수 있다. + 둘 다 쓸 수도 있다. BeautifulSoup 모듈을 이용하는 방법 (정적 크롤링) Selenium 모듈을 이용하는 방법 (동적 크롤링) 기본적으로는 정적 크롤링이 HTML DOM parsing을 통해 (특히 웹 프로그래밍을 해본 사람이라면) 리소스를 얻을 수 있기 때문에 더 쉽다. 하지만 순수 HTML이 아닌 JS로 이루어진 웹 페이지라면 BeautifulSoup만으로는 크롤링이 어렵다. 이 때 사용할 수 있는 동적 크롤링인 Selenium 모듈에 대한 사용법을 알아보자. Selenium 설치 및 환경 구축 1. Selenium 모듈을 설치한다. pip install selenium 2. Chrome 정보를 확인한 뒤, 여기에서 ChromeDr..
-
Python Programming : datetime ⇿ string 변환PROGRAMMING/Python 2021. 4. 28. 12:06
Python에는 datetime이라는 유용한 모듈이 있다. 이는 시계열 데이터를 다룰 때 감초같은 녀석이라 사용법을 잘 익혀둬야 한다. 나는 beginner니까 천천히 익혀보려고 하는데(^^) DB 업데이트 과정 중에서 최근 date 이후의 데이터만 가져오는 작업이 있었다. 여기에서는 datetime 객체를 나만의 string format으로 변환해야 하는데, {datetime_object}.strftime(format) 함수를 활용하면 된다. 반대로 string -> datetime으로 변환할 때에는 datetime.strptime(date_string, format) 함수를 활용한다. 자주 쓰는 옵션: %Y : 4자리 수 년도 / %y : 2자리 수 년도 %m : 2자리수 월 / %b : 월 영어로(..
-
Algorithm 문제 해결에 Python을 사용해야 하는 이유 10가지PROGRAMMING/Python 2021. 3. 14. 21:58
Algorithm 문제 해결에 Python을 사용해야 하는 이유 10가지를 정리해 보았다. Integer limit이 없다. Permutation, combination 함수가 제공된다. from itertools import permutations from itertools import combination List, String에서 slicing이 유용하다. for-else 구문 (for문에 한 번도 걸리지 않을 때) for i in data: if i > 10: break else: print('All items are lower than 10.') Multiple return values return a, b, c Chained comparision if a < b < c: Swapping var..
-
파이썬을 이용한 사인 그래프 그리기 - Generating a Synthetic Sine Wave with PythonPROGRAMMING/Python 2017. 3. 21. 08:44
import numpy as np import matplotlib.pyplot as plt import matplotlib # properties SIG_AMPLITUDE = 10 SIG_OFFSET = 2 SIG_PERIOD = 100 NOISE_AMPLITUDE = 3 N_SAMPLES = 5 * SIG_PERIOD INSTRUMENT_RANGE = 9 # construct a sine wave times = np.arange(N_SAMPLES).astype(float) signal = SIG_AMPLITUDE * np.sin(2 * np.pi * times / SIG_PERIOD) + SIG_OFFSET # and mix it with some random noise noise = NOISE_AMP..