본문 바로가기
반응형

전체 글1014

Sqlachemy - 특정 날짜 하루의 데이터를 가져오기 다음은 SQLAlchemy를 사용하여 특정 날짜 하루의 데이터를 가져오는 코드이다. from sqlalchemy import create_engine from sqlalchemy.orm import Session # 데이터베이스 연결 설정 engine = create_engine("postgresql://user:password@localhost/database") # 세션 생성 session = Session(engine) # 특정 날짜 date = "2024-01-07" # 쿼리 query = session.query(Table).filter(Table.created_at >= date).filter(Table.created_at < date + timedelta(days=1)) # 결과 조회 res.. 2024. 2. 29.
Python - Missing optional dependency 'openpyxl' 해결 Missing optional dependency 'openpyxl' Pandas의 엑셀 읽기의 호환성을 위해서 보통 openpyxl 을 사용한다. openpyxl을 별도로 제공되는 Python용의 엑셀 라이브러리로써, 현재 3.1.2버전까지 나왔으며, Pandas에서 제공하는 기본 엑셀 라이브러리보다 좋은 호환성을 제공하여 많이 이용한다. 위 에러는 Pandas에서 openpyxl를 사용하는데, 해당 라이브러가 없을 때 발생한다. pd.read_excel(file_path, engine='openpyxl') 즉 openpyxl를 이용하고자 한다면, pip를 이용해서 설치하도록 하자. pip install openpyxl 2024. 2. 29.
Python - URL, WebContent Encode / Decode 하기 HTTP 호출을 진행하면, URL을 인코딩하거나 디코딩하는 일을 자주 경험하게 된다. 이때 주의할 점음 문자열을 encode/decode 를 Byte 레벨로하는 것이 아닌 문자열 수준으로 진행해주어야 한다. 즉 전체 문자열이 아닌 일부 UTF-8 로 작성된 문자열만 변환해주면 된다. 이를 효과적으로 해주는 라이브러리가 urllib 의 parse의 quote와 unquote 를 통해 진행할 수 있다. urllib.parse — URL을 구성 요소로 구문 분석 — Python 3.12.2 문서 urllib.parse — Parse URLs into components Source code: Lib/urllib/parse.py This module defines a standard interface to br.. 2024. 2. 29.
Python - Header Content-Disposition의 UTF-8에서 Filename 가져오기 웹을 이용해서 파일을 다운로드하였을때, 파일이름에 대한 정보가 필요한 경우가 있다. 이때 유용하게 사용할 수 있는 헤더 정보가 있는데, 바로 Content-Disposition 이다. Content-Disposition 에는 보통 파일 이름 정보를 함께 보내주는 경우가 있다. 하지만 한글인 경우 UTF-8로 디코딩을 해야 정상적으로 확인이 가능하다. 여러가지로 코드를 테스트해본 결과 unquote를 활용하여 디코딩이 가능하다는 것을 알게 되었는데, 아래 코드를 이용해서 파일 이름정보를 가져올 수 있다. from urllib import parse def get_filename(source_header): fname = re.findall("filename\*=([^;]+)", source_header, .. 2024. 2. 29.
Python - Error cv2 (-215:Assertion failed) !ssize.empty() in function 'resize' 이오류를 해결하기까지 시간이 조금 소요되었는데, 가장 시도해볼 수 있는 방법은 바로 사이즈이다. 필자가 확인한 내용으로는 사이즈가 정상 범주에서 너무 크기 때문에 발생하게 된다. 쉽게 확인하는 방법은 cv2.imread(imagepath) 를 이용해서 읽어보는 것이다. 그럼 오유 원인이 사이즈인데, 결과는 ssize.empty로 떨어지는 경우가 많다. 물론 이를 위해서 파일 경로 문제라던가, 다양한 문제가 있지만, 필자는 다음과 같은 코드를 이용해서 사이즈를 조정하면 해소가 가능하다. from PIL import Image image = Image.open(image_path) re_height = round(image.height / 2) re_width = round(image.width / 2) i.. 2024. 2. 29.
EasyOCR - "module 'cv2' has no attribute 'imread'" 버전이슈인 경우가 있다. 현재 가장 정상적으로 동작하는 건 4.5 버전으로 확인된다. pip uninstall opencv-python pip install opencv-python==4.5.4.60 2024. 2. 29.
GBA/GBC - 포켓몬스터 한글롬 모음 (1세대 2세대 3세대) 게임보이 어드밴스와 컬러로 출시하면서 엄청난 인기를 끌었던 포켓몬스터 3세대 버전까지 정리해보았다. 게임보이 언드밴스는 패밀리 시리즈 보다 성능이 우수하여 보다 높은 퀄리티의 게임이 가능하여 많은 사용자들이 사랑하였고, 지금 해봐도 괜찮은 게임들이 많으므로, 레트로 게임 유저라면 한번쯤은 해볼 만한 게임기라고 할 수 있다. 1. 게임보이 어드밴스, 컬러 에뮬레이터 Windows - Visualboy Advance M v2.1.4.x64 마우스 끌어다 놓기(Drag And Drop)으로 실행이 가능하다. 기본키(키보드 기준) A: L, B: K, L:I, R:O Start: Enter, Select: Back Visualboy Advance M v2.1 비밀번호:1234 한글 패치 사이트 기본적으로 영문 .. 2024. 2. 28.
닌텐도 스위치 Emul - yuzu 고급 설정 with 제노블레이드3 Yuzu 에뮬레이터가 최근에 상당히 괜찮은 수준으로 올라온 것 같다. 오늘은 yuzu 고급 설정에 대해서 알아보고자 한다. 그리고 고급 설정을 통해 제노 블레이드 3 를 보다 원활히 플레이 할 수록 구성해 보겠다. 개별 Properties 구성 Yuzu는 옵션 설정을 게임별로 옵션을 구성할 수 있는 옵션이 존재하는데, 게임 타이틀에서 마우스 우클릭을 하여 Properties를 구성할 수 있다. 여기에서 중요한 옵션은 2가지로 RAM 설정과, Graphic 관련 옵션이다. Extended memory layout: 6GB 메모리를 많이 사용하는 게임에 필요한 옵션으로 사용 메로리를 6GB까지 확장해 준다. General 옵션에서 Extended memory layout을 6GB로 올리도록 하자. 제노블레이.. 2024. 2. 28.
고전 슈퍼패미콤(SFC) - 택틱스 오우거 (한글 패치) 택틱스 오우거(한글 패치) 장르: 시뮬레이션 RPG (SRPG) 제작사 퀘스트 발매일: 1995년 발매 구동 에뮬레이터: Snes9X 최근 리메이크 되어 나왔는데, 그래픽이 너무 기존과 같아서 놀랬다... Tactics Ogre.smc 2024. 2. 28.
반응형