반응형

Programming/Python 27

[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..

Programming/Python 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..

Programming/Python 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..

Programming/Python 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"..

Programming/Python 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..

Programming/Python 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..

Programming/Python 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 에 실행 ..

Programming/Python 2020.11.02 (5)

[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 ..

Programming/Python 2020.04.17 (2)

[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..

Programming/Python 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 를 설치하였..

Programming/Python 2020.02.07 (2)

[Python] Python -m 의 의미

파이썬에서 모듈을 실행한다는 뜻 보통 아래와 같이 pip 를 python3 또는 python2 에서 적절하게 실행하고자 할 때 사용함 python2 -m pip install pycrypto python3 -m pip install pycrypto 참고자료 1 : 파이썬 모듈 설치하기 https://docs.python.org/ko/3/installing/index.html 파이썬 모듈 설치하기 — Python 3.7.4 문서 파이썬 모듈 설치하기 이메일 distutils-sig@python.org 널리 사용되는 공개 소스 개발 프로젝트로서, 파이썬에는 적극적으로 지원하는 기여자와 사용자의 커뮤니티가 있어, 자신들의 소프트웨어를 공개 소스 라이센스 계약에 따라 다른 파이썬 개발자가 사용할 수 있도록 합니..

Programming/Python 2019.08.04

[Python] 구글 이미지 크롤링 하기

인스타그램으로 크롤링 하기 이외에도 구글 이미지를 크롤링 할 수 있다. 개인적으로 해시태그를 통해서 크롤링 하는 방법은 네거티브 이미지가 너무 많이 포함되어있기 때문에 비추, 구글 이미지는 자신이 원하는 검색어의 조합을 통해 크롤링 하기 때문에 마음에 드는 이미지가 다수 포함될 수 있다는 장점이 있다. 하지만 한번에 100개 까지 밖에 수집이 안되는 듯 하다. 1. 설치하기 https://google-images-download.readthedocs.io/en/latest/installation.html $ pip install google_images_download $ git clone https://github.com/hardikvasa/google-images-download.git $ cd go..

Programming/Python 2019.08.02
728x90
반응형