찾다
백엔드 개발파이썬 튜토리얼Python 경량 웹 프레임워크: Bottle 라이브러리!

Python 경량 웹 프레임워크: Bottle 라이브러리!

가벼운 만큼 Bottle 라이브러리의 사용도 매우 간단합니다. 나는 이 글을 읽기 전에 독자들은 이미 Python에 대해 간단한 이해를 갖고 있다고 믿습니다. 그렇다면 수백 줄의 코드로 서버의 기능을 완성할 수 있는 신비한 작업은 무엇일까요? 기다려 보자.

1. Bottle 라이브러리 설치

1) pip를 사용하여 설치

Python 경량 웹 프레임워크: Bottle 라이브러리!

2) Bottle 파일 다운로드

https://github.com/bottlepy/bottle/blob/master/bottle.py

2. "HelloWorld!"

모든 것이 먼저 성공한다는 말처럼 HelloWorld의 간단한 예를 통해 우리는 Bottle의 기본 메커니즘을 이해할 수 있습니다.

먼저 코드:

Python 경량 웹 프레임워크: Bottle 라이브러리!

먼저 병 라이브러리에서 get 및 run 메소드를 가져옵니다.

다음으로 웹사이트를 구축해야 합니다. 먼저 IP 주소와 포트가 필요합니다. 이 부분은 테스트 단계에서 127.0.0.1(로컬 주소)과 포트 80을 사용하여 완료됩니다. .(브라우저 기본 포트) 다음으로 이동하세요.

이 코드를 실행하세요 python HelloWorld.py

Python 경량 웹 프레임워크: Bottle 라이브러리!

이렇게 하면 웹사이트 서버가 실행되고, 브라우저를 열고 127.0.0.1(:80)

Python 경량 웹 프레임워크: Bottle 라이브러리!

익숙한 404, 오류 메시지 찾을 수 없음: '/'. 물론 이것은 서버 외에 웹사이트에도 매우 중요한 구성요소인 웹페이지가 있기 때문입니다!

브라우저가 IP 주소에 액세스하면 IP에 get 요청을 보내고 웹 페이지 데이터가 반환될 때까지 기다립니다. 그런 다음 병 라이브러리는 이 프로세스를 구현하기 위해 get 메서드를 캡슐화합니다.

코드는 다음과 같습니다.

Python 경량 웹 프레임워크: Bottle 라이브러리!

def 위의 @ 기호를 아시는지 모르겠습니다. 이 기호는 Python 구문에서 데코레이터를 의미하는 것으로 간단히 이해하면 됩니다. 홈페이지. 여기서 @get('/')는 브라우저가 GET 127.0.0.1/ 요청을 보낼 때 홈페이지를 해당 함수로 장식합니다. 모든 처리를 수행하고 마지막으로 get 요청에 대한 응답을 반환할 수 있습니다. 여기서 다시 실행하면 다음과 같은 효과가 나타납니다.

Python 경량 웹 프레임워크: Bottle 라이브러리!

병에 캡슐화된 템플릿 메소드를 사용하여 웹 페이지 데이터를 .tpl 파일에 별도로 작성할 수도 있습니다. 예는 다음과 같습니다.

Python 경량 웹 프레임워크: Bottle 라이브러리!

run 함수에는 매개변수 리로더도 있습니다. 이를 True로 설정하면 변경 사항이 있을 때 자동으로 서버를 다시 로드하므로 핫 업데이트가 가능합니다. 웹사이트의.

3. 동적 라우팅 및 파일 다운로드

위에서 get('/')을 사용했듯이 기본적으로는 서버가 실행되기 전에 결정된 주소를 이 방법을 사용하여 라우팅할 수 있습니다.

그렇다면 서버 런타임이라면 어떨까요? 예를 들어, 웹 사이트 서버의 파일에 대한 액세스는 정적 방식으로 수행할 수 없습니다. 이 경우 동적 라우팅을 사용할 수 있습니다.

Bottle의 동적 라우팅은 get과 유사하게 데코레이터를 사용하여 라우팅 기능을 구현하는 기능을 사용합니다.

Python 경량 웹 프레임워크: Bottle 라이브러리!

여기서 데코레이터의 매개변수 'name'에 독특한 것이 나타나는 것을 볼 수 있습니다. 수정된 함수의 매개변수는 콜론 뒤의 매개변수와 이름이 동일합니다. 함수에서는 이름 매개변수를 처리 변수로 사용하고 최종적으로 응답을 반환할 수 있습니다.

Python 경량 웹 프레임워크: Bottle 라이브러리!

동적 라우팅을 사용하면 파일 라우팅에 편의성을 제공할 수 있습니다. 서버에는 수백 또는 수천 개의 파일이 저장되어 있을 수 있으며 각 파일에 대해 고정 주소에 의존하는 것은 불가능합니다.

Python 경량 웹 프레임워크: Bottle 라이브러리!

여기서 새로운 함수 static_file을 볼 수 있습니다. 첫 번째 매개변수는 파일 이름이고 두 번째 매개변수는 루트 디렉터리 주소(즉, 파일 위치)입니다.

-- HelloWorld.py

--store1.txt

브라우저를 방문하여

Python 경량 웹 프레임워크: Bottle 라이브러리!

물론 파일을 폴더에 넣을 수도 있습니다. 루트 매개변수를 폴더 주소로 바꾸면 됩니다. .

4. POST 응답 및 파일 업로드

더 복잡한 기능을 구현하려면 GET 메서드뿐만 아니라 POST 메서드도 사용해야 합니다. 여기서는 HTML 언어의 Form을 사용하여 POST 요청에 대한 Bottle 라이브러리의 응답을 보여줍니다.

Python 경량 웹 프레임워크: Bottle 라이브러리!

먼저 위와 같이 파일을 업로드하는 창을 구현합니다.

여기의 페이지는 간단한 양식 제출 인터페이스입니다. 여기서는 자세히 소개하지 않겠습니다.

Python 경량 웹 프레임워크: Bottle 라이브러리!

다음 POST 응답 코드는 다음과 같습니다.

Python 경량 웹 프레임워크: Bottle 라이브러리!

Bottle 라이브러리에서 post 메소드를 가져와서 요청하세요.

get 메소드와 유사하게 post를 사용하여 응답 함수를 장식한 다음 함수 본문의 request를 사용하여 웹사이트 서버에서 받은 post 요청 본문을 가져옵니다. request.forms.get() 메소드는 Key에 해당하는 문자열을 Form에서 꺼내고, request.files.get() 메소드는 Key에 해당하는 파일을 Form에서 꺼내고, save 메소드는 다음과 같습니다. 파일 업로드를 위해 데이터를 저장하는 데 사용됩니다.

다음으로 테스트를 수행합니다.

Python 경량 웹 프레임워크: Bottle 라이브러리!

업로드를 클릭한 후 서버 루트 디렉터리(파이썬 파일의 위치)를 열고 파일이 성공적으로 업로드되었는지 확인합니다!

Python 경량 웹 프레임워크: Bottle 라이브러리!

5. 요약

이러한 기능을 완료한 후에는 병을 네트워크에 배포해야 합니다. 결국 로컬에서만 실행된다면 웹사이트가 무슨 소용이 있을까요?

Tsinghuanet은 각 네트워크 액세스 포인트에 대해 공용 IP를 제공합니다. cmd에서 ipconfig를 사용하여 IP 주소를 확인하고 실행 중인 매개변수를 공용 IP로 변경한 다음 모든 장치에 로그인하십시오. IP 주소와 포트 번호를 입력하세요. (기본값 80) 브라우저에서(휴대폰 권장, 컴퓨터 브라우저는 가끔 속도가 매우 느림) 접속하시면 됩니다!

Bottle 라이브러리에는 쿠키 읽기 및 쓰기, 플러그인 설치, 제거 및 비활성화가 모두 포함되어 있으며 다른 서버에도 배포할 수 있으며 이러한 기능은 매우 간단합니다. 독자들이 더 자세히 알아보기를 기다리고 있습니다!

위 내용은 Python 경량 웹 프레임워크: Bottle 라이브러리!의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
이 기사는 51CTO.COM에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제
파이썬 : 게임, Guis 등파이썬 : 게임, Guis 등Apr 13, 2025 am 12:14 AM

Python은 게임 및 GUI 개발에서 탁월합니다. 1) 게임 개발은 Pygame을 사용하여 드로잉, 오디오 및 기타 기능을 제공하며 2D 게임을 만드는 데 적합합니다. 2) GUI 개발은 Tkinter 또는 PYQT를 선택할 수 있습니다. Tkinter는 간단하고 사용하기 쉽고 PYQT는 풍부한 기능을 가지고 있으며 전문 개발에 적합합니다.

Python vs. C : 응용 및 사용 사례가 비교되었습니다Python vs. C : 응용 및 사용 사례가 비교되었습니다Apr 12, 2025 am 12:01 AM

Python은 데이터 과학, 웹 개발 및 자동화 작업에 적합한 반면 C는 시스템 프로그래밍, 게임 개발 및 임베디드 시스템에 적합합니다. Python은 단순성과 강력한 생태계로 유명하며 C는 고성능 및 기본 제어 기능으로 유명합니다.

2 시간의 파이썬 계획 : 현실적인 접근2 시간의 파이썬 계획 : 현실적인 접근Apr 11, 2025 am 12:04 AM

2 시간 이내에 Python의 기본 프로그래밍 개념과 기술을 배울 수 있습니다. 1. 변수 및 데이터 유형을 배우기, 2. 마스터 제어 흐름 (조건부 명세서 및 루프), 3. 기능의 정의 및 사용을 이해하십시오. 4. 간단한 예제 및 코드 스 니펫을 통해 Python 프로그래밍을 신속하게 시작하십시오.

파이썬 : 기본 응용 프로그램 탐색파이썬 : 기본 응용 프로그램 탐색Apr 10, 2025 am 09:41 AM

Python은 웹 개발, 데이터 과학, 기계 학습, 자동화 및 스크립팅 분야에서 널리 사용됩니다. 1) 웹 개발에서 Django 및 Flask 프레임 워크는 개발 프로세스를 단순화합니다. 2) 데이터 과학 및 기계 학습 분야에서 Numpy, Pandas, Scikit-Learn 및 Tensorflow 라이브러리는 강력한 지원을 제공합니다. 3) 자동화 및 스크립팅 측면에서 Python은 자동화 된 테스트 및 시스템 관리와 ​​같은 작업에 적합합니다.

2 시간 안에 얼마나 많은 파이썬을 배울 수 있습니까?2 시간 안에 얼마나 많은 파이썬을 배울 수 있습니까?Apr 09, 2025 pm 04:33 PM

2 시간 이내에 파이썬의 기본 사항을 배울 수 있습니다. 1. 변수 및 데이터 유형을 배우십시오. 이를 통해 간단한 파이썬 프로그램 작성을 시작하는 데 도움이됩니다.

10 시간 이내에 프로젝트 및 문제 중심 방법에서 컴퓨터 초보자 프로그래밍 기본 사항을 가르치는 방법?10 시간 이내에 프로젝트 및 문제 중심 방법에서 컴퓨터 초보자 프로그래밍 기본 사항을 가르치는 방법?Apr 02, 2025 am 07:18 AM

10 시간 이내에 컴퓨터 초보자 프로그래밍 기본 사항을 가르치는 방법은 무엇입니까? 컴퓨터 초보자에게 프로그래밍 지식을 가르치는 데 10 시간 밖에 걸리지 않는다면 무엇을 가르치기로 선택 하시겠습니까?

중간 독서를 위해 Fiddler를 사용할 때 브라우저에서 감지되는 것을 피하는 방법은 무엇입니까?중간 독서를 위해 Fiddler를 사용할 때 브라우저에서 감지되는 것을 피하는 방법은 무엇입니까?Apr 02, 2025 am 07:15 AM

Fiddlerevery Where를 사용할 때 Man-in-the-Middle Reading에 Fiddlereverywhere를 사용할 때 감지되는 방법 ...

Python 3.6에 피클 파일을로드 할 때 '__builtin__'모듈을 찾을 수없는 경우 어떻게해야합니까?Python 3.6에 피클 파일을로드 할 때 '__builtin__'모듈을 찾을 수없는 경우 어떻게해야합니까?Apr 02, 2025 am 07:12 AM

Python 3.6에 피클 파일로드 3.6 환경 보고서 오류 : modulenotfounderror : nomodulename ...

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
4 몇 주 전By尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

WebStorm Mac 버전

WebStorm Mac 버전

유용한 JavaScript 개발 도구

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

DVWA

DVWA

DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구