본문 바로가기

Language/Python

(71)
setuptools.find_packages()이용해 패키지 찾기 import setuptools aa = setuptools.find_packages() print(aa) 결과 bye를 지우고 하면 빈 list가 나온다. 결과 end
파이썬 셀레늄(selenium) 기다리기 셀레늄을 왜 쓰냐면 그냥 http request를 보내면 데이터가 오기전에 크롤이 끝나버린다. 그래서 내가 원하는 데이터는 오지 않고 껍데기만 오는 경우가 많다. 원하는 데이터가 로딩될때까지 기다렸다가 크롤링 하기 위해서 셀레늄을 쓴다. 다음 코드는 인스타그램에 '발레'라는 해쉬태그를 검색한 페이지를 크롤하는 코드이다. import os from selenium import webdriver from bs4 import BeautifulSoup from selenium.webdriver.chrome.options import Options from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.suppo..
파이썬 스텍(stack) 연산 파이썬 스텍(stack) 연산 파이썬으로 알고리즘 문제를 풀다 보면 스텍이 필요할 때가 있다.스텍은 검색해보면 알겠지만 먼저 넣은 것이 가장 나중에 나오는 Last In First Out(LIFO) 자료구조이다. 떠먹는 푸딩이나 아이스크림과 비슷하다고 생각하면 된다. 떠먹는 아이스크림 뚜껑을 열면 윗부분을 먹어야 아랫 부분을 먹을 수 있다. 스텍도 가장 나중에 들어간 것부터 뽑을 수 있게 되어있다. stack은 두가지 연산이 있다. 넣는것(.append(item))과 빼는것(.pop())이 그것이다. .append()를 쓰면 []의 맨 뒤에 더해진다.예를들어 .append(1), .append(2)를 하면 [1, 2]이렇게 된다. .pop()을 쓰면 [1, 2]의 뒤부터 빠진다..pop() => [1]...
python에서 윈도우인지 맥인지 판단하기 python에서 윈도우인지 맥인지 판단하기나는 맥에서 짰는데 윈도우에서도 돌아가게 하고 싶다면 실행하는 컴퓨터 또는 서버에 따라서 다른 라이브러리를 사용하게 if문을 써서 분기처리를 하고 싶은 경우가 있다.크롤러에서는 driver가 운영체제 마다 파일이 다르다. 그래서 이 기능이 필요한데 사용하는 방법은 아래와 같다.import platform print(platform.system())결과Darwin 나는 맥에서 실행해서 Darwin이라고 나왔는데 위 코드를 윈도우에서 실행 하면 Window라고 나올 것이다.end.
python pandas사용 방법 - csv읽어오기 to 그루핑(group) sum하기 실습 파일 쿠팡 한개 카테고리의 모든 상품 정보 1020개 -> 우유noodles : ->강남역 맛집 csv읽어오기df = pd.read_csv("/com/array/data.csv") json 읽어오기import pandas as pd df = pd.read_json("./naverKeywordResult.json") print(df.count()) df만들기print("av:", df['price'].mean()) print("std:", df['price'].std()) print("var:", df['price'].var()) d = {'col1': df['price'].mean(), 'col2':[]} dfResult = pd.DataFrame(data=d) excel로 저장 하기import p..
이진탐색 알고리즘 이진탐색 알고리즘 이진탐색의 핵심은1.중간값을 찾는 것 2.찾은게 targetValue보다 작으면 midIndex가 end가 된다.3.찾은게 targetValue보다 크면 start가 midIndex가 된다.
python string tokenizer 1234567891011121314151617statement = "1.8 + (3*2)".replace(" ", "")print(statement) def tokenizer(statement): arr = [] accu = "" for word in statement: if word in "[]{}()+-*/^": if accu != "": arr.append(accu) accu = "" arr.append(word) else: accu = accu + word return arr print(tokenizer(statement))cs 결과['1.8', '+', '(', '3', '*', '2', ')'] 1.8 + (3*2) 를 입력하면 숫자와 연산자를 분리해서 넣은 array를 리턴함
Pyhon Tdd하기 - test코드 만들기 with pycharm Pyhon Tdd하기 - pypi 설치하고 test코드 만들기 나는 python을 개발 할 때 스크립트성으로 많이 쓴다. 후루룩 짜서 실행 하면 몇줄 안짜도 돌아가기 때문이다.그런데 조금 잘 짜볼려고 하면 tdd(Test Driven Development)를 해야 하는데 test code를 만들어주는 기능이 있어야 테스트 코드를 만들지 없으면 잘 안만들게 된다.그래서 알아봤더니 방법이 있어서 이 글을 쓴다. 내가 사용한 툴은 pycharm이다.테스트 코드를 만들고 싶은 클래스 이름에서 마우스 우측 클릭 한다. 테스트 코드가 만들어 졌다.실행하면 된다. end.