본문 바로가기

Python 20

KPT 프로젝트 리뷰 :: "오늘뭐먹지?" 프로젝트 2,3주차 되짚어보기 사이트 URL을 바꿨습니다 :: 오늘 뭐 먹지? 퇴근 전에 슬쩍 배달 맛집 탐방하기!! 날씨와 기분에 맞춰 꺼내먹어요 www.mysmallmeal.shop KPT: Keep, Problem, Try의 약자로 회고 내용을 세 가지 관점으로 분류하여 회고를 진행한다는 것이 중요한 포인트이다. 이처럼 팀을 3개의 관점으로 나누면서, 회고를 진행하여, 꼼꼼하고 효율적인 회고가 이루어질 수 있게 된다. 🚗 KEEP: keep it on 서로의 코드를 리뷰해줬던 과정 과한 컨벤션을 지정하지 않고 기존 회사들의 컨벤션에서 차용한것 주석을 통해 코드를 설명해 준 것 -> 후반에는 좀 부족해지긴 했지만 적당한 수준 AWS ElasticBeanstalk 완전(까지는 아니고) 정복...! => 무중단배포(!!AWS!!) 몽.. 2021. 10. 19.
몽고디비 주소를 그대로 깃에 올려버렸다고??? 파이썬 MongoDB 환경변수 설정하기 플라스크 등의 라이브러리를 사용할 때, 배포 전에 깃허브에 올려둘 때, 몽고디비 클라이언트의 주소와 아이디 비밀번호를 그대로 노출해서 곤란한 상황을 겪을 수 있다. (AWS 키 파일은 말할 것도 없다.) 보통 일반적으로는 from flask import Flask, request, jsonify, render_template, Response from pymongo import MongoClient # 몽고디비 app = Flask(__name__) # client = MongoClient('localhost', 27017) # 배포 전에 원격 db로 교체! # 01 client = MongoClient("mongodb://id:password@localhost:27017") # 02 client = M.. 2021. 10. 4.
[파이썬으로 웹개발] flask를 wsgi 서버에서 구동하기 (https 프로토콜) 네 앞 과정을 잘 따라오셨을 것이라 믿고 다음 단계를 진행합니다. nohup 등으로 직접적으로 flask 서버를 돌리는 것이 아닌 안전하고 안정적인 환경에서 작동시키고, 또 접속 프로토콜을 443포트로 받을 수 있도록 해 더 많은 기능과 보안을 제공할 수 있습니다. 우분투에서 필요한 파이썬 환경을 위해 몇가지 프로그램을 설치하겠습니다. 중간에 Enter를 기입하라거나 Y를 입력하라는 문구가 나올 수 있습니다. sudo apt update sudo apt install python3-pip python3-dev build-essential libssl-dev libffi-dev python3-setuptools 다음으로는 파이썬 가상환경 패키지를 설치합니다. sudo apt install python3-v.. 2021. 10. 2.
[파이썬으로 웹개발] 플라스크 NGINX 서버를 우분투 18.04에 설치하기 NGINX는 세계에서 가장 인기있는 웹서버다. whatruns 같은 크롬 익스텐션을 사용해보면 상당히 많은 수의 웹사이트가 이 서버를 사용해 웹사이트를 배포하고 있다는 것을 알 수 있다. 따라서 플라스크를 사용하지 않더라도 배워두면 쓸모 있는 기술이다. 대표적으로 사용하는 Apache나 Tomcat 보다 리소스 친화적이라고 한다. (그게 무슨 말인지는 나도 모르는게 비밀) AWS에서 우분투 18.04(이 글은 당연히 정확히 이 버전에만 해당) 인스턴스를 만들고 키 파일을 발급받아, 윈도우즈의 경우 ssh -i ubuntu@를 입력하면 우분투에 접속할 수 있다. 키파일은 뜻을 알 수 없는 텍스트 쪼가리일 뿐이지만 실수로라도 깃에 업로드하거나 타인에게 노출되면 당신의 서버를 자기것처럼 드나들 수 있는 중요한.. 2021. 10. 1.
[파이썬으로 웹개발] 플라스크 geolocation api 사용하기: Use a producttion WSGI server instead. 플라스크는 꽤나 좋은 웹개발 프레임워크다. 사용법도 직관적이고, 폴더 구조도 까다롭지 않게 정리할 수 있는 툴을 제공하며, 기본적으로 갖추고 있는 기능이 많지만 그만큼 해야할 일도 많은 장고랑 비교하면 천사나 다름없다. 플라스크는 스파르타코딩클럽에서 수업을 들으면서 알게 된 라이브러리이다. 그만큼 외부에서 주요 스택으로 다뤄지는 모습을 못봤다는 얘기일 수도 있고, 아니면 파고들어서 배울만큼 복잡하고 어렵지 않아서 그런 것일 수도 있다. 스파르타코딩클럽의 웹개발 종합반과 웹개발 심화반은 모두 파이썬 플라스크를 웹프레임워크로, 몽고디비를 데이터베이스로 사용해서 직관적이고 접근하기 쉬운 커리큘럼을 가지고 있다. 그리고 내가 아는 바로는 스파르타코딩클럽 홈페이지 자체가 플라스크로 운영되는 것으로 알고 있다.수천.. 2021. 10. 1.
[작고귀여운팁] 변수로 사용할 수 없는 이름의 파이썬 파일 임포트하기 파이썬의 변수/함수의 명명 규칙은 다른 프로그래밍 언어와 비슷하다. 영문 문자와 숫자를 사용할 수 있다. 대소문자를 구분한다. (일반적으로 snake_case를 사용한다.) 문자부터 시작해야 하며 숫자부터 시작하면 안된다. _(밑줄 문자)로 시작할 수 있다. 특수 문자(+, -, *, /, $, @, &, %등)는 사용할 수 없다. 파이썬의 키워드(if, for, while, and, or 등)는 사용할 수 없다. => 예약어 # 참고로 예약어는 내장 모듈인 keyword 모듈의 kwlist를 프린트해서 확인해 볼 수 있다. ['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def.. 2021. 9. 22.
[별거아닌팁] 파이썬에 어느 정도 익숙해질 때 챙기면 좋을 팁 (모듈화) main 사용하기 어떤 파이썬 파일이든 나중에 다른 파이썬 파일에서 모듈로 당겨 쓸 수 있는 가능성을 생각한다. 그런데 만약 파이썬 파일 안에 코드가 함수나 클래스로 구성되어 있지 않고 바로 기능을 작성한 경우, 다른 파일에서 그것을 가져다 쓰기는 매우 힘들어진다. 그것을 가져오는 과정에서 원본 파이썬 파일의 코드까지 실행되어 버리니까. 그래서 나는 main을 자주 쓴다. 파이참에서 빈 라인에 main 이라고 입력한 뒤 탭을 누르면 if __name__ == "__main__": 이라는 코드 자동완성이 나타난다. 그리고 이 조건문이 뜻하는 것은 "내가 이 파일을 직접적으로 실행했을 때에만 아래 코드를 작동한다!"라는 명시다. 파이썬에는 __name__ 말고도 숨겨진 내장 변수가 꽤 있는데, 초.. 2021. 9. 20.
(TIL0914) flask-jinja 템플릿을 사용해보자 (jinja 분노편) 2021.09.14 오늘의 TIL 오늘은 지난 시간에 masonry로 머리 싸매던 것을 결국 부트스트랩4버전으로 내리는 것으로 합의를 보고 어떻게 하던 것을 끝내고, 그 다음 주차인 "나만의 영어 단어장 만들기"를 해봤다. owlbot이라는 오픈API를 적극적으로 활용해서, 영단어를 검색하면 단어의 자세한 뜻과 발음 기호, 예문 등이 표시된다. 영단어를 북마크해 둘 수 있다. 북마크한 영단어의 상세페이지에서는 북마크 버튼이 사라지고 삭제버튼이 생긴다. 거기에 나만의 예문을 추가하거나 삭제할 수 있다. 영단어를 삭제하면 연결된 예문들도 모두 사라진다. 영단어를 검색할 때 이미 북마크된 단어는 검색버튼을 누르면 빨간색으로 하이라이트된다. 영영 사전에 없는 단어를 검색하면 페이지를 얼럿을 띄우고 리로딩된다. .. 2021. 9. 14.