Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- terraform
- aws사용자모임
- open ai
- AWS
- 클라우드
- Azure
- 파이썬
- git hub
- go
- jenkins
- dockerfile
- AI챗봇
- 프로세스 관리
- docker
- nexus
- maven
- Linux
- GIT
- 변수
- 사용자 계정 관리
- 명령어
- AI
- awskrug
- python
- 리눅스
- 함수
- 3티어 아키텍처
- it기사
- 애저
- 표준 라이브러리
Archives
- Today
- Total
We are Architect
32. flask로 웹사이트 간단하게 만들기 본문
* 취지 :
- 문득 전에 웹사이트를 파이썬으로 만들 때 플라스크와 장고를 사용하는 것을 본 적이 있는데 어떻게 사용하는지 궁금하여서 간단하게 구현해 보고 싶었다.
* 도구 및 패키지
- Flask
* 플라스크 란?
- 웹 애플리케이션을 쉽게 구축해 줄수 있게 하는 파이썬 기반 웹 프레임 워크이다.
- 프로그램이 가볍고 배우기 쉽다고 한다.
* 플라스크의 기본 구조
- flask 객체 생성 : 애플리케이션의 핵심 역할을 하는 객체를 만든다.
app = Flask(__name__)
- route 설정 : 웹 페이지의 URL주소를 정의한다.
# @이 부분
@app.route('/<path:name>') # 127.0.0.1/css
def start(name):
return send_from_directory('html',name)
- view 함수 작성 : 라우트가 처리할 작업을 정의한다.
@app.route('/<path:name>') # 127.0.0.1/css
def start(name):
# 뷰 함수를 반환하는 코드 구간이다.
return send_from_directory('html',name)
* 실습
- 해당 명령어로 C드라이브 폴더에서 새 폴더 생성
- 파이썬 venv : 패키지 관리에 특화된 경량화 도구.
- py -3 -m venv homepage1
- 만든 폴더로 위치 변경
- cd homepage1
- 만들어진 파일안에 Scripts로 위치 변경 후에 activate 명령어 실행.
- cd Scripts # 가상화 환경 실행 activate
- homepage1 폴더로 돌아와서 플라스크 설치
- pip install flask
- homepage1 폴더에 start.py 파일 만들어서 플라스크 객체 및 함수 작성.
# Flask: Flask 애플리케이션을 만들기 위해 사용하는 클래스
# send_from_directory : 특정 폴더에서 파일을 찾아서 사용자에게 반환할 때 사용하는 유틸리티.
from flask import Flask, send_from_directory
# Flask 애플리케이션 객체를 만든다. 이 객체를 통해 라우트나 웹 서버를 설정.
app = Flask(__name__)
# /hello라는 URL로 접속하면 이 아래에 있는 함수가 실행
@app.route("/hello") # 127.0.0.1
def hello_world():
# html로 Hello, World 반환
return "<p>Hello, World!</p>"
# / URL로 접속하면 이 아래에 있는 함수가 실행
@app.route("/") # 127.0.0.1
def index():
# html 디렉토리 안에서 index.html 파일을 찾아서 반환
return send_from_directory('html',"index.html")
# 동적인 경로를 처리, Flask가 경로에서 값을 가져오도록 지정
@app.route('/<path:name>') #
def start(name):
# html 폴더에서 사용자가 요청한 name 파일을 찾아 반환
# name에 index.html 파일값을 반환하고 index파일에서 /css/styles.css파일을 요청. 그리고 해당값으로 라우팅
return send_from_directory('html',name)
- start bootstrap 사이트에서 무료 html 파일 다운로드
https://startbootstrap.com/?showPro=false&showAngular=false&showVue=false
- homepage1 폴더 안에 html폴더 생성
- 다운로드 받은 파일 안에 내용물 index파일 안에 다 넣기
- flasks --app start run 실행 후 브라우저에 들어가서 주소창에 127.0.0.1:5000 입력.
- 전체 코드
# Flask: Flask 애플리케이션을 만들기 위해 사용하는 클래스
# send_from_directory : 특정 폴더에서 파일을 찾아서 사용자에게 반환할 때 사용하는 유틸리티.
from flask import Flask, send_from_directory
# Flask 애플리케이션 객체를 만든다. 이 객체를 통해 라우트나 웹 서버를 설정.
app = Flask(__name__)
# /hello라는 URL로 접속하면 이 아래에 있는 함수가 실행
@app.route("/hello") # 127.0.0.1
def hello_world():
# html로 Hello, World 반환
return "<p>Hello, World!</p>"
# / URL로 접속하면 이 아래에 있는 함수가 실행
@app.route("/") # 127.0.0.1
def index():
# html 디렉토리 안에서 index.html 파일을 찾아서 반환
return send_from_directory('html',"index.html")
# 동적인 경로를 처리, Flask가 경로에서 값을 가져오도록 지정
@app.route('/<path:name>') #
def start(name):
# html 폴더에서 사용자가 요청한 name 파일을 찾아 반환
# name에 index.html 파일값을 반환하고 index파일에서 /css/styles.css파일을 요청. 그리고 해당값으로 라우팅
return send_from_directory('html',name)
'Programing > Python' 카테고리의 다른 글
34. 파이썬을 이용한 이자율 계산기 (3) | 2024.12.09 |
---|---|
33. 파이썬을 이용한 데이터 시각화 프로그램 만드는 법 (0) | 2024.12.08 |
31. 웹 사이트 차단 프로그램 (2) | 2024.12.05 |
30. 파이썬으로 만드는 TIC-TAC-TOE 게임 (2) | 2024.12.04 |
29. 파이썬으로 만드는 숫자 맞추기 게임 (0) | 2024.12.02 |