목록Python파이썬 (12)
WinGyu_coder
우분투 20.04에 여러 파이썬 버전을 설치하고 관리하려면 pyenv를 사용하는 것이 가장 편리합니다. pyenv를 사용하면 여러 파이썬 버전을 쉽게 설치하고 전환할 수 있습니다. 다음은 pyenv를 사용하여 파이썬 여러 버전을 설치하고 관리하는 방법입니다.필수 패키지 설치:sudo apt updatesudo apt install -y make build-essential libssl-dev zlib1g-dev \libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm \libncurses5-dev libncursesw5-dev xz-utils tk-dev \libffi-dev liblzma-dev python3-openssl gitpyenv 설치:curl h..

Python 개발자로 일을 하다가 보니, 영상 분석쪽 업무를 하게 되었는데 분석한 영상을 스트리밍으로 구현을 해야 했다. 그러기 위해 Cloudflare CDN 서버를 사용했는데, 나쁘지 않게 구현이 가능해서 글을 적어본다. 간단한 구성은 아래와 같다. 설명해보자면 우선 우분투 리눅스로 서버를 구성하였다. 사용자가 영상 분석을 요청하면 HTTP, HTTPS 요청을 서버가 받아서 영상 분석을 시작한다. 들어온 요청 만큼 파이썬이 FFmpeg 프로세서 명령어를 실행해 영상을 RTMP 를 통해 CDN 서버인 Cloudflare에 보낸다. 아무래도 실시간 스트리밍이기 때문에 실시간 영상 분석 속도가 관건이다. (전송속도 및 영상 재생 속도가 문제 있을시 FPS 및 해상도를 조절해보자, 영상 코덱, 전송 통신, ..
Selenium에서 find_element 또는 find_elements 메서드로 웹 요소를 찾은 후, 다양한 속성과 메서드를 사용하여 그 요소에 대한 정보를 얻거나 상호작용할 수 있습니다. 일반적으로 사용되는 주요 속성과 메서드는 다음과 같습니다: 속성 (Properties) text: 요소의 표시되는 텍스트를 가져옵니다. tag_name: 요소의 태그 이름을 반환합니다 (예: 'input', 'div'). get_attribute(name): 요소의 특정 속성 값을 반환합니다. 예를 들어, get_attribute('href')는 링크의 URL을 반환합니다. is_displayed(): 요소가 사용자에게 현재 보이는 상태인지를 반환합니다 (보이면 True, ..
다각형 내부에 특정 점이 위치하는지를 판별하는 것은 사각형보다 복잡합니다. 사각형의 경우, 간단히 x, y 좌표를 비교하여 점이 내부에 있는지 확인할 수 있지만, 다각형의 경우는 더 복잡한 수학적 계산이 필요합니다. 이를 위해 "Point in Polygon" 알고리즘을 사용할 수 있습니다. OpenCV에서는 cv2.pointPolygonTest 함수를 사용하여 이를 쉽게 수행할 수 있습니다. 이 함수는 점과 다각형의 꼭짓점을 나타내는 배열을 입력으로 받고, 점이 다각형 내부에 있는지, 외부에 있는지, 아니면 경계에 있는지를 나타내는 값을 반환합니다. 사용 예제: import cv2 import numpy as np # 다각형의 꼭짓점 좌표를 나타내는 배열 polygon = np.array([[x1, y..

안녕하세요, 파이썬 math 모듈을 사용해서 3개의 좌표에 대한 각도를 구해보겠습니다. A, B, C 좌표를 가지고 있을때 X 좌표를 계산하는 방법입니다. 좌표는 각각 X 가로, Y 세로를 가지고 있습니다. ex) print(a) -> [400, 200] # A 좌표 아래 코드는 3개의 좌표를 가지고 있었을때 B 좌표를 중간으로 X각도를 구하는 방법입니다. def angle_between_three_points(A, B, C): try: BA = [A[0]-B[0], A[1]-B[1]] BC = [C[0]-B[0], C[1]-B[1]] dot_product = BA[0]*BC[0] + BA[1]*BC[1] magnitude_BA = math.sqrt(BA[0]**2 + BA[1]**2) magnitude..

Pyarmor 파이아머 문서: https://pyarmor.readthedocs.io/en/v7.7/index.html# PyArmor’s Documentation — PyArmor 7.6.0 documentation © Copyright 2018 - 2020 Dashingsoft Corp. Revision a282ab77. pyarmor.readthedocs.io 위에 올린 Pyarmor 문서는 7.7버전입니다. 버전별로 관람 가능합니다. 우선 라이센스를 구매 해줍니다. https://pyarmor.dashingsoft.com/ Pyarmor - Obfuscating Python Scripts Bind to fixed machine Pyarmor can bind obfuscated scripts to ..
MultiPartParser와 FormParser에 대해 1. parser_classes Django Rest Framework (DRF)의 APIView에는 parser_classes라는 속성이 있습니다. 이는 클라이언트로부터 전송받은 요청의 내용을 어떻게 파싱할지 결정하는 파서(parser)들의 집합을 정의합니다. 예를 들어, 클라이언트가 JSON 형태의 데이터를 전송할 때, DRF는 이 데이터를 파싱하기 위해 JSONParser를 사용합니다. 마찬가지로, 클라이언트가 파일과 함께의 폼 데이터를 전송할 때, DRF는 이를 처리하기 위해 다른 파서를 사용해야 합니다. 2. MultiPartParser 이 파서는 멀티파트 폼 데이터를 파싱하는 데 사용됩니다. "멀티파트"는 여러 부분으로 구성된 데이터를 ..

파이썬을 사용할때 협업 및 코드 작성시 정해진 규칙으로 작성하기 위해선 Black 블랙은 필수다. 적용 방법을 알아보자 1. black 설치하기 터미널에서 pip install black 작성 2. black 위치 확인하기 터미널에서 $ where black, which black 치면 위치 확인 가능, 보통 가상환경 사용시 가상환경 폴더 스크립트 안에 있음 3. Pycharm File Watch 플러그인 설치 Pycharm 상단 File -> settings 클릭 -> Plugins 에서 File Watch 설치 -> Pycharm 재실행 4. Pycharm File Watch 세팅 Pycharm 상단 File -> settings 클릭 -> Tools -> File Watchers 클릭 + 클릭 후 ..