본문 바로가기
반응형

python72

WSGI.. 누구냐 넌 WSGI Web Server Gateway Interface 발음 : 위스키 간단 호출 규칙 에 대한 웹 서버 로 전달 요청에 웹 애플리케이션 또는 프레임 워크 작성 파이썬 프로그래밍 언어 2003 년에 Python 웹 프레임 워크 는 일반적으로 CGI , FastCGI , mod_python 또는 특정 웹 서버 의 다른 사용자 정의 API 에 대해서만 작성되었습니다 WSGI에는 두 가지 측면이 있습니다. 서버 / 게이트웨이 측. 이것은 종종 Apache 또는 Nginx 와 같은 전체 웹 서버 소프트웨어를 실행 하거나 flup 와 같은 웹 서버와 통신 할 수있는 경량 애플리케이션 서버입니다 . 애플리케이션 / 프레임 워크 측면. 이것은 Python 프로그램 또는 프레임 워크에서 제공하는 Python 호출.. 2021. 6. 23.
[Python] Mysql Connection Pool 사용하기 Python에서 Connection Pool? 연결 풀링은 연결이 요청 될 때마다 생성되는 것이 아니라 재사용됨을 의미합니다 . Python을 통한 MySQL 연결 설정은 주로 MySQL 커넥터 Python API가 중간 계층 서버 환경에서 사용되는 경우 리소스와 시간이 많이 소요됩니다. 즉, 여러 MySQL 서버에 대한 다중 연결을 유지하고 연결을 쉽게 사용할 수 있어야하는 미들웨어입니다. 예를 들어, 애플리케이션은 데이터 검색 또는 데이터 업데이트를 위해 데이터베이스를 매우 자주 사용합니다. 모든 새 요청 애플리케이션을 처리하기 위해 새 MySQL 데이터베이스 연결을 생성하고 요청 완료 후 연결이 닫힙니다. 다시 새 요청에 대해 애플리케이션은 새 연결을 설정하고이 프로세스는 모든 새 요청에 대해 반복.. 2021. 6. 18.
[Python] urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate SSL: CERTIFICATE_VERIFY_FAILED with Python3 urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate urlopen 으로 이미지를 다운로드 받으려는데 위와 같은 오류 메시지가 발생함. 해결 1. certifi 링크 pip install certifi 이걸로 해결이 안된다면 아래 확실한 방법으로~ 해결 2. 아래와 같이 ssl 을 import 하고 프로그램 시작 시 한번 실행함. import ssl ssl._create_default_https_context = ssl._create_unverified_context 2021. 6. 18.
[Python] Hex Str 을 binary 로 바꾸기 (Convert Hex to Binary) Convert Hex to Binary import binascii binary_string = binascii.unhexlify(hex_str) 2021. 6. 9.
[Python] str find 사용하기 Python find 찾은 문자열의 index 를 리턴합니다. 못찾으면 -1 index 시작은 0 부터. 예제 #1 6 #2 14 #3 28 모두 찾기 string = 'hello ~ bryan ~ how are you ~' print('#1 ', string.find('~')) print('#2 ', string.find('~', 8)) print('#3 ', string.find('~', 15)) i = string.find('~') while i > -1: print(f'~ position = {i}') i = string.find('~', i+1) 출력 #1 6 #2 14 #3 28 ~ position = 6 ~ position = 14 ~ position = 28 2021. 6. 9.
[Python] 2차원 이상의 배열을 각각 axis로 배열 만들기 아래와 같은 배열이 있을 때, (배열의 배열도되고, 튜플의 배열도 됩니다.) all = [ (0, 'a'), (1, 'b'), (2, 'c'), (3, 'd') ] 여기서 행으로 나눈 [0,1,2,3] 과 ['a', 'b', 'c', 'd'] 의 배열을 만들고 싶다면 방법1. 일반적인 방법 a, b = [], [] for al in all: a.append(al[0]) b.append(al[1]) # a : [1,2,3,4] # b : ['a','b','c','d'] 방법2. numpy 사용 na = np.array(all) a = list(na[:, 0]) b = list(na[:, 1]) 단순히 list 를 뽑아내기만 하는거면 numpy 사용 비추입니다. 방법3. map, zip 사용 a, b = l.. 2021. 6. 8.
[Python] convert uint16 to uint8 uint16 은 : 0 ~ 65535 uint8 은 0~255 (RGB 에서 사용하는 타입입니다) uint16에서 uint8 타입으로 변환하는데는 여러 방법이 있지만 normalize를 해야합니다. 단순히 im.astype('uint8') 로 해서는 데이터가 손실됩니다. opencv 사용 : cv2.normalize im_uint8 = cv2.normalize(im_uint16, None, 0, 255, cv2.NORM_MINMAX, dtype=cv2.CV_8U) Skimage 사용 : img_as_ubyte rom skimage import exposure, img_as_ubyte im_uint8 = img_as_ubyte(exposure.rescale_intensity(im_uint16)) 2020... 2021. 5. 28.
[Python] InvalidURL Url Encode / Url 한글 처리 InvalidURL urllib.request 를 사용할 때 Url 에 한글이나 특문이 있으면 오류가 발생할 수 있습니다. 아래와 같은 코드는 오류가 발생하죠. from urllib.request import Request, urlopen url = 'https://hello-bryan.tistory.com/manage/여기에 한글이 있다.txt' req = Request(url, headers={'User-Agent': 'Mozilla/5.0'}) res = urlopen(req) if res.status == 200: print('성공') else: print('실패코드 {}'.format(res.status)) InvalidURL URL 에 공백이 있어서 그렇죠. 그럼 공백을 빼고 한글만 있다면? .. 2021. 4. 20.
Python 으로 Crawling 에 필요한 준비 준비 할 사항만 체크해봅니다. 1. Chrome driver 링크 - 본인pc의 크롬 브라우저에 맞는 버전으로 다운로드하고 경로를 기억해둠. 2. python library 설치 - 또는 pip install 명령어 직접 실행. $ pip install selenium 3. Chrome driver 객체 생성 from selenium import webdriver from selenium.webdriver.chrome.options import Options from selenium.webdriver.common.desired_capabilities import DesiredCapabilities chrome_driver_path = 'C:/chromedriver/chromedriver_89/chrome.. 2021. 4. 15.
[Python] json 파일에 주석 달기 json file 에 주석달기 config.json 이라는 파일의 내용이 아래와 같다고 합시다. { "name": "bryan",/* 여기에 설명 쓰고싶을 때 */ "title": "helllo", "url": "https://hello-bryan.tistory.com/", "bookmark": true /* 여기에도 주석 달고 싶을 때 */ } 이 파일을 json 로드한다면 오류가 나겠죠. with open('config.json') as f: json_data = json.load(f) # error 아래와 같이 사용하시면 됩니다. with open('config.json', 'r', encoding='utf-8') as f: contents = f.read() while "/*" in content.. 2021. 2. 11.
728x90
반응형