파이썬에서 datetime.timezone()을 이용한 시간대 설정

by joviansummer original STEEMIT post: https://steemit.com/blog/@joviansummer/datetime-timezone 파이썬에서 datetime.timezone()을 이용해서 datetime 객체의 시간대를 설정할 수 있습니다. 예를 들어 한국시간(KST)은 GMT+9시간이므로 아래와 같이 설정해서 현재 시각을 구할 수 있습니다. import datetime KST = datetime.timezone(datetime.timedelta(hours=9)) now_kst = datetime.datetime.now(tz=KST) 시간대 정보가 없는 datetime 객체의 경우에는 앞의 예제 코드에서 정의된 변수 KST를 이용해서 아래와 같이 시간대를 할당할 수 있습니다. # 시간대 정보 없는 UTC 기준 현재시각 가져오기 - utcnow() now = datetime.datetime.utcnow() # 시간대 정보 추가 now_kst = now.astimezone(KST) @joviansummer의 스팀 프로젝트 스팀 증인노드를 운영중입니다. @jswit에 증인투표해 주시면 감사하겠습니다. ( https://steemitwallet.com/~witnesses ) jswit 증인 노드 프로젝트를 시작합니다. jsup 업보팅(upvoting) 서비스 소개 jsup 수혜자 지정 기능 추가 jsup 2.0 - 업보팅을 다시 위대하게 jSTEEM 프로젝트 - 텔레그램 챗봇으로 구현하는 스팀 블럭체인 탐색기 Steemit-Search - 스팀잇 포스팅 검색 STEEM.NFT - 디지털 아트 보존 프로젝트

파이썬 waitress 웹서버(flask와 연동 가능)

by joviansummer
original STEEMIT post: https://steemit.com/blog/@joviansummer/waitress-flask


파이썬 flask에서 Flask 객체의 run() 함수를 호출하면 웹서버가 구동됩니다. 이 웹서버는 디버깅을 목적으로 구현된 것이라고 합니다. 성능이나 보안 측면에서 취약하기 때문에 실제로 인터넷에 공개할 웹서버에 대해서는 사용하지 않아야 한다고 합니다.

그래서 어떻게 할 것인가 좀 찾아보니, flask와 연동해서 구동할 수 있는 별도의 웹서버 모듈이 있네요. waitress라는 파이썬 모듈입니다.

우분투 계열 리눅스의 경우 아래와 같이 python3-waitress 패키지를 설치합니다.

sudo apt-get install python3-waitress

만약 flask를 이용해서 작성한 웹 앱 스크립트가 test.py라면, 같은 디렉토리에 server.py 스크립트를 아래와 같은 내용으로 만들어 줄 수 있습니다.

from waitress import serve

# test.py 사용
import test

serve(test.app, host='127.0.0.1', port=5000)

위와 같이 작성한 후, test.py가 아니라 server.py를 실행하여 test.py에 작성된 웹 앱을 구동합니다. test.py 스크립트를 import할 때는 flask 자체 웹서버가 구동되지 않아야 하므로 run() 함수가 실행되면 안됩니다. 이런 이유로 test.py 스크립트에서 자체 웹서버 구동과 관련된 내용은 아래와 같은 형태로 작성되어야 합니다.

from flask import Flask

app = Flask(__name__)
...

if __name__ == "__main__":
  app.run(host='127.0.0.1', port=5000)

waitress 모듈의 설명서는 아래의 링크입니다.

https://docs.pylonsproject.org/projects/waitress/en/latest/


@joviansummer의 스팀 프로젝트

스팀 증인노드를 운영중입니다. @jswit에 증인투표해 주시면 감사하겠습니다.
(https://steemitwallet.com/~witnesses)

jswit 증인 노드 프로젝트를 시작합니다.

jsup 업보팅(upvoting) 서비스 소개

jsup 수혜자 지정 기능 추가

jsup 서비스에 큐레이션 보상 분배 기능이 추가되었습니다.

jSTEEM 프로젝트 - 텔레그램 챗봇으로 구현하는 스팀 블럭체인 탐색기

STEEM.NFT - 디지털 아트 보존 프로젝트


Posted through the AVLE Dapp (https://avle.io)

Comments

Popular posts from this blog

Nuitka - 파이썬 스크립트를 바이너리 실행 파일로 변환

파이썬에서 스팀잇 ID 및 포스팅 키 유효성 확인

파이썬에서 시간대(timezone) 변경