Programming(178)
-
anaconda에서 pipenv 그리고 다시 pyenv로...
anaconda을 그다지 추천하지 않는 방법이라 pipenv를 써보기로 결정했다. 일단 anaconda의 단점으로 너무나 큰 패키지 파일.. 그리고 conda install 시, anaconda에 패키징 되어 있는 패키지만 설치가 된다는 단점.. 요런 것들이 사용자로 하여금 약~~~간 찝찝함을 주었다. 게다가 pipenv는 python에서 공식으로 지원해주는 패키지 툴이라길래 믿음이 갔다. pipenv에는 lock 파일이 있어서, 보다 명확한 패키지 dependency를 보장한다. 단순 requirements.txt로도 해당 패키지의 의존패키지까지 dependency를 보장해주지는 않는다고 들었는데, pipenv는 해당 문제를 개선할 수 있어 보였다. $> brew install pipenv 위 명령을 ..
2023.12.14 -
눈물의 pyenv ....
맥을 arm64로 변경하고 나서부터인가.. 갑자기 pyenv intall 이 동작이 되지 않았다!!! ~/.pyenv 폴더를 지우고, brew로 pyenv를 다시 깔아 봤으나 pyenv install로 파이썬을 설치하려고 하면 아래와 같은 에러가 발생!! Traceback (most recent call last): File "", line 1, in File "/Users/machizhov/.pyenv/versions/3.8.6/lib/python3.8/curses/__init__.py", line 13, in from _curses import * ModuleNotFoundError: No module named '_curses' 분명 mac에서 python 실행 후 from _curses impor..
2023.12.14 -
logging config 사용하기
python에서는 log config를 활용해서 코드 상에서의 로그 설정 없이 로그를 설정 할 수가 있다. 우선 아래와 같은 로그 파일을 생성한다. [loggers] keys=root,test1Logger,test2Logger [handlers] keys=streamHandler,fileHandler, rotatingFileHandler [formatters] keys=simpleFormatter,complexFormatter [formatter_simpleFormatter] format=[%(name)s] %(message)s [formatter_complexFormatter] format=%(asctime)s %(levelname)s [%(name)s] [%(filename)s:%(lineno)d] ..
2023.01.09 -
동적으로 module import 하기
파이썬에서 정적으로 module을 import를 하려고 하면 아래와 같이 사용하면 된다. import xxxx 그렇다면 동적으로 import는 어떻게 해야 할까?? 여기서는 손쉽게 import 할 수 있도록 importlib를 이용한 방법을 소개한다. 예를 들어 lib폴더에 module.py라는 함수가 있다고 가정하자. module.py def print(): print('module') 아래와 같이 사용함으로써 lib의 module.py package를 가져올 수가 있다. import os import sys sys.path.append(os.path.dirname(os.path.abspath(os.path.dirname(__file__)))) import importlib pkg = importlib..
2022.10.01 -
[REACT] react developer tools 사용하기
chrome extention에서 react develop tools을 설치한다. https://chrome.google.com/webstore/detail/react-developer-tools/fmkadmapgofadopljbjfkapdkoienihi React Developer Tools Adds React debugging tools to the Chrome Developer Tools. Created from revision 336ac8ceb on 7/13/2022. chrome.google.com 그러면 아래와 같이 chrome developer 창에 Components와 Profiler 탭이 생긴 것을 확인할 수가 있다. react app을 실행시키고 chrome developer 창을 연 ..
2022.08.06 -
selenium으로 크롤링 하기
로그인 한 후 데이터를 긁어와야 하는 웹 페이지는 어떤 식으로 데이터를 긁어와야 할까?? 이것 저것 찾아보다가 selenium이란 패키지를 발견했다. selenium은 headless (브라우저를 띄우지 않고 브라우저처럼 행동하는 것) chrome을 이용해서 실제 사용자가 액션을 취한 것처럼 동작시키는 작업을 한다. 기본 작업 방법은 다음과 같다. 1. chrome driver 설치 2. crawling 관련 패키지 설치 3. selenium으로 로그인 후 세션 찾기 4. 세션을 python requests 세션에 넣은 후 api 호출하기. 1. 우선 selenium을 사용하기 위해서는 chrom driver를 설치해야 한다. 해당 환경은 mac이라서 brew를 이용해서 아래와 같이 설치했다. $> br..
2022.02.24