no image
[Python] google images download 이용하여 구글 검색 이미지 저장하기
자신의 크롬 버전에 맞는 chromedriver 를 다운로드 해주고, 아래와 같이 git clone 하여 google images download 프로젝트 다운로드 한 뒤 사용하면 된다. $ git clone https://github.com/ultralytics/google-images-download $ cd google-images-download $ python3 bing_scraper.py --search 'cat' --limit 10 --download --chromedriver ./chromedriver 참고로 chromedriver 다운로드는 아래에서 하면 된다. https://chromedriver.chromium.org/downloads ChromeDriver - WebDriver fo..
2021.05.20
[Python] Ubuntu 18.04 에서 Python3.5 빌드하여 설치하기
1. 필수 패키지 설치 1 apt-get install libssl-dev apt-get install make build-essential libssl-dev zlib1g-dev libbz2-dev libsqlite3-dev 위와 같이 필요한 패키지를 설치하고 파이썬을 설치해야 정상 설치가 된다. 1-1. 필수 패키지 설치 2 sudo apt-get install libssl1.0 필자는 추가로 위 패키지도 설치해주었다. 위 패키지를 설치하지 않고 파이썬을 설치하고나서 pip 를 설치할 때 자꾸 아래와 같은 에러가 발생한다. 이것 때문에 2시간 삽질함, 아래는 삽질 기록이다. ~$ curl https://bootstrap.pypa.io/get-pip.py | python3.5 % Total % Rece..
2021.02.17
[Python] argparse(Argument Parser) 에서 boolean 값 받기
아래와 같이 str2bool 함수를 구현하여 argparse 에서 boolean 값을 받아올 수 있다. def str2bool(v): if isinstance(v, bool): return v if v.lower() in ('yes', 'true', 't', 'y', '1'): return True elif v.lower() in ('no', 'false', 'f', 'n', '0'): return False else: raise argparse.ArgumentTypeError('Boolean value expected.') import argparse if __name__ == "__main__": parser = argparse.ArgumentParser(description='test') parse..
2021.01.14
[Python] pytube 이용하여 Youtube 영상 저장하기
1. pytube 설치하기 python3 -m pip install --upgrade "git+https://github.com/nficano/pytube.git" 2. 코드 실행하기 참고로 유튜브 링크는 원하는 유튜브 영상을 켠 뒤 주소 창에서 긁어오면 된다. import os import pytube # pip install pytube from pytube.cli import on_progress url = "유튜브 링크" yt = pytube.YouTube(url, on_progress_callback=on_progress) print(yt.streams) save_dir = "./" # 저장경로 yt.streams.filter(progressive=True, file_extension="mp4"..
2020.12.28
[Python] GPU 지정하여 Python 코드 실행하기
가끔 GPU를 나눠 할당하여 코드를 실행하고 싶을 때가 있는데 아래와 같이 간단히 설정 가능하다. 애용하는 방법이다. Terminal에서 python 코드를 실행하는 경우 ~$ CUDA_VISIBLE_DEVICES=0 python test.py ~$ CUDA_VISIBLE_DEVICES=1 python test.py ~$ CUDA_VISIBLE_DEVICES=2,3 python test.py python 코드에서 GPU 지정하는 방법 import os os.environ["CUDA_DEVICE_ORDER"]="PCI_BUS_ID" os.environ["CUDA_VISIBLE_DEVICES"]="0" 참고자료 : dongjinlee.tistory.com/entry/%EC%84%A0%ED%83%9D%ED%9..
2020.11.20
[Python] 파일명 추출, 디렉토리 경로 추출
파일 목록 얻기 glob.glob(wildcard) - 유닉스 경로명 패턴 스타일로 파일 목록을 얻을 수 있다. os.listdir(path) - 지정된 디렉토리의 전체 파일 목록을 얻을 수 있다. dircache.listdir(path) - os.listdir(path)와 동일한 파일 목록을 전달한다. path가 변경되지 않았을 때, dircache.listdir()은 다시 디렉토리 구조를 읽지 않고 이미 읽은 정보를 활용 dircache.annotate(head, list) - 일반 파일명과 디렉토리명을 구분해주는 함수 디렉토리 다루기 os.chdir(path) - 작업하고 있는 디렉토리 변경 os.getcwd() - 현재 프로세스의 작업 디렉토리 얻기 os.remove( filename or pat..
2020.11.20
[Python] Python Schedule 모듈 이용하여 원하는 시간대에 프로그램 실행 시키기
프로그램을 주기적으로 자동으로 돌려놔야 할 일이 생겨서 아래와 같이 Python Schedule 모듈을 이용하여 원하는 시간대에 프로그램을 실행시키도록 하였다. import schedule import time def job(): #TO DO ... # 10초에 한번씩 실행 schedule.every(10).second.do(job) # 10분에 한번씩 실행 schedule.every(10).minutes.do(job) # 매 시간 실행 schedule.every().hour.do(job) # 매일 10:30 에 실행 schedule.every().day.at("10:30").do(job) # 매주 월요일 실행 schedule.every().monday.do(job) # 매주 수요일 13:15 에 실행 ..
2020.11.02
[Python] Why time.time() gives 0.0?
You could use timeit.default_timer instead of time.time. timeit.default_timer will choose the best timer (time.time, time.clock or time.perf_counter) for your system. The resolution of the timer isn't unlimited; it goes up by small amounts periodically. If the two calls are close enough together, you will see a zero value. If you tried a large number of such calls, you would probably find that t..
2020.06.17
[Python] Import 는 꼭 맨 윗줄에 써야하는가?
Python 내부에서는 모듈을 import 하는 함수를 여러번 실행하더라도 모듈은 한번만 Import 되기 때문에 사실상 어디서 하던 상관 없다고 한다. 심지어 함수 안에서 모듈을 import 하는 것이 실행속도가 더 빠르다고 한다. 왜냐하면 맨 위에서 컴파일하면 LOAD_GLOBAL 하는 반면, 함수 안에서는 LOAD_FAST 하기 때문에 함수 안에서 Import 하는 것이 더 빠르다고 한다. 그럼에도 불구하고 맨 위에 모듈을 import 하는 이유는 Python 스타일 가이드가 그렇게 쓰라고 권장했기 때문이다. 맨 위에서 import 하는 경우 import random def f(): L = [] for i in xrange(1000): L.append(random.random()) for i in ..
2020.04.17
[Python] 파일 읽고 쓰기
1. 파일 생성하기 f = open("새파일.txt", 'w') f.close() 파일 열기 모드 r 읽기모드 - 파일을 읽기만 할 때 사용 w 쓰기모드 - 파일에 내용을 쓸 때 사용 a 추가모드 - 파일의 마지막에 새로운 내용을 추가 시킬 때 사용 2. 파일을 쓰기 모드로 열어 출력값 적기 # writedata.py f = open("C:/doit/새파일.txt", 'w') for i in range(1, 11): data = "%d번째 줄입니다.\n" % i f.write(data) f.close() 3. 파일 읽기 3.1 readline() # readline_all.py f = open("C:/doit/새파일.txt", 'r') while True: line = f.readline() if not..
2020.03.09
[Python] Anaconda 가상환경에서 spyder 실행하기 (Windows)
Windows 환경에서 Anaconda 가상환경을 생성하고, 가상환경 내부에서 spyder 를 실행하는 방법은 아래와 같다. 1. python 3.6 버전의 아나콘다 가상환경 생성 $ conda create -n myenv python=3.6 2. 가상환경 실행 $ activate myenv 3. 가상환경에 spyder 설치 $ conda install spyder 4. spyder 실행 $ spyder 5. Spyder 에서 python 동작 환경 확인하기 import sys print(sys.executable) 결과는 아래와 같다. print(sys.executable) C:\Users\name\Anaconda3\envs\myenv\pythonw.exe 6. Anaconda spyder 를 설치하였..
2020.02.07
[Python] 파일 존재 유무 검사
import os.path file = 'test.txt' if os.path.isfile(file): print("Yes. it is a file") esif os.path.isdir(file): print("Yes. it is a directory") esif os.path.exists(file): print("Something exist") else : print("Nothing") 참고자료 : https://wikidocs.net/14304 불러오는 중입니다...
2020.01.08