Python 경량 웹 프레임워크: Bottle 라이브러리!
가벼운 만큼 Bottle 라이브러리의 사용도 매우 간단합니다. 나는 이 글을 읽기 전에 독자들은 이미 Python에 대해 간단한 이해를 갖고 있다고 믿습니다. 그렇다면 수백 줄의 코드로 서버의 기능을 완성할 수 있는 신비한 작업은 무엇일까요? 기다려 보자.
1. Bottle 라이브러리 설치
1) pip를 사용하여 설치
2) Bottle 파일 다운로드
https://github.com/bottlepy/bottle/blob/master/bottle.py
2. "HelloWorld!"
모든 것이 먼저 성공한다는 말처럼 HelloWorld의 간단한 예를 통해 우리는 Bottle의 기본 메커니즘을 이해할 수 있습니다.
먼저 코드:
먼저 병 라이브러리에서 get 및 run 메소드를 가져옵니다.
다음으로 웹사이트를 구축해야 합니다. 먼저 IP 주소와 포트가 필요합니다. 이 부분은 테스트 단계에서 127.0.0.1(로컬 주소)과 포트 80을 사용하여 완료됩니다. .(브라우저 기본 포트) 다음으로 이동하세요.
이 코드를 실행하세요 python HelloWorld.py
이렇게 하면 웹사이트 서버가 실행되고, 브라우저를 열고 127.0.0.1(:80)
익숙한 404, 오류 메시지 찾을 수 없음: '/'. 물론 이것은 서버 외에 웹사이트에도 매우 중요한 구성요소인 웹페이지가 있기 때문입니다!
브라우저가 IP 주소에 액세스하면 IP에 get 요청을 보내고 웹 페이지 데이터가 반환될 때까지 기다립니다. 그런 다음 병 라이브러리는 이 프로세스를 구현하기 위해 get 메서드를 캡슐화합니다.
코드는 다음과 같습니다.
def 위의 @ 기호를 아시는지 모르겠습니다. 이 기호는 Python 구문에서 데코레이터를 의미하는 것으로 간단히 이해하면 됩니다. 홈페이지. 여기서 @get('/')는 브라우저가 GET 127.0.0.1/ 요청을 보낼 때 홈페이지를 해당 함수로 장식합니다. 모든 처리를 수행하고 마지막으로 get 요청에 대한 응답을 반환할 수 있습니다. 여기서 다시 실행하면 다음과 같은 효과가 나타납니다.
병에 캡슐화된 템플릿 메소드를 사용하여 웹 페이지 데이터를 .tpl 파일에 별도로 작성할 수도 있습니다. 예는 다음과 같습니다.
run 함수에는 매개변수 리로더도 있습니다. 이를 True로 설정하면 변경 사항이 있을 때 자동으로 서버를 다시 로드하므로 핫 업데이트가 가능합니다. 웹사이트의.
3. 동적 라우팅 및 파일 다운로드
위에서 get('/')을 사용했듯이 기본적으로는 서버가 실행되기 전에 결정된 주소를 이 방법을 사용하여 라우팅할 수 있습니다.
그렇다면 서버 런타임이라면 어떨까요? 예를 들어, 웹 사이트 서버의 파일에 대한 액세스는 정적 방식으로 수행할 수 없습니다. 이 경우 동적 라우팅을 사용할 수 있습니다.
Bottle의 동적 라우팅은 get과 유사하게 데코레이터를 사용하여 라우팅 기능을 구현하는 기능을 사용합니다.
여기서 데코레이터의 매개변수 'name'에 독특한 것이 나타나는 것을 볼 수 있습니다. 수정된 함수의 매개변수는 콜론 뒤의 매개변수와 이름이 동일합니다. 함수에서는 이름 매개변수를 처리 변수로 사용하고 최종적으로 응답을 반환할 수 있습니다.
동적 라우팅을 사용하면 파일 라우팅에 편의성을 제공할 수 있습니다. 서버에는 수백 또는 수천 개의 파일이 저장되어 있을 수 있으며 각 파일에 대해 고정 주소에 의존하는 것은 불가능합니다.
여기서 새로운 함수 static_file을 볼 수 있습니다. 첫 번째 매개변수는 파일 이름이고 두 번째 매개변수는 루트 디렉터리 주소(즉, 파일 위치)입니다.
-- HelloWorld.py
--store1.txt
브라우저를 방문하여
물론 파일을 폴더에 넣을 수도 있습니다. 루트 매개변수를 폴더 주소로 바꾸면 됩니다. .
4. POST 응답 및 파일 업로드
더 복잡한 기능을 구현하려면 GET 메서드뿐만 아니라 POST 메서드도 사용해야 합니다. 여기서는 HTML 언어의 Form을 사용하여 POST 요청에 대한 Bottle 라이브러리의 응답을 보여줍니다.
먼저 위와 같이 파일을 업로드하는 창을 구현합니다.
여기의 페이지는 간단한 양식 제출 인터페이스입니다. 여기서는 자세히 소개하지 않겠습니다.
다음 POST 응답 코드는 다음과 같습니다.
Bottle 라이브러리에서 post 메소드를 가져와서 요청하세요.
get 메소드와 유사하게 post를 사용하여 응답 함수를 장식한 다음 함수 본문의 request를 사용하여 웹사이트 서버에서 받은 post 요청 본문을 가져옵니다. request.forms.get() 메소드는 Key에 해당하는 문자열을 Form에서 꺼내고, request.files.get() 메소드는 Key에 해당하는 파일을 Form에서 꺼내고, save 메소드는 다음과 같습니다. 파일 업로드를 위해 데이터를 저장하는 데 사용됩니다.
다음으로 테스트를 수행합니다.
업로드를 클릭한 후 서버 루트 디렉터리(파이썬 파일의 위치)를 열고 파일이 성공적으로 업로드되었는지 확인합니다!
5. 요약
이러한 기능을 완료한 후에는 병을 네트워크에 배포해야 합니다. 결국 로컬에서만 실행된다면 웹사이트가 무슨 소용이 있을까요?
Tsinghuanet은 각 네트워크 액세스 포인트에 대해 공용 IP를 제공합니다. cmd에서 ipconfig를 사용하여 IP 주소를 확인하고 실행 중인 매개변수를 공용 IP로 변경한 다음 모든 장치에 로그인하십시오. IP 주소와 포트 번호를 입력하세요. (기본값 80) 브라우저에서(휴대폰 권장, 컴퓨터 브라우저는 가끔 속도가 매우 느림) 접속하시면 됩니다!
Bottle 라이브러리에는 쿠키 읽기 및 쓰기, 플러그인 설치, 제거 및 비활성화가 모두 포함되어 있으며 다른 서버에도 배포할 수 있으며 이러한 기능은 매우 간단합니다. 독자들이 더 자세히 알아보기를 기다리고 있습니다!
위 내용은 Python 경량 웹 프레임워크: Bottle 라이브러리!의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

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

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

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

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

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











PS "로드"문제는 자원 액세스 또는 처리 문제로 인한 것입니다. 하드 디스크 판독 속도는 느리거나 나쁘다 : CrystalDiskinfo를 사용하여 하드 디스크 건강을 확인하고 문제가있는 하드 디스크를 교체하십시오. 불충분 한 메모리 : 고해상도 이미지 및 복잡한 레이어 처리에 대한 PS의 요구를 충족시키기 위해 메모리 업그레이드 메모리. 그래픽 카드 드라이버는 구식 또는 손상됩니다. 운전자를 업데이트하여 PS와 그래픽 카드 간의 통신을 최적화하십시오. 파일 경로는 너무 길거나 파일 이름에는 특수 문자가 있습니다. 짧은 경로를 사용하고 특수 문자를 피하십시오. PS 자체 문제 : PS 설치 프로그램을 다시 설치하거나 수리하십시오.

느린 Photoshop 스타트 업 문제를 해결하려면 다음을 포함한 다중 프론트 접근 방식이 필요합니다. 하드웨어 업그레이드 (메모리, 솔리드 스테이트 드라이브, CPU); 구식 또는 양립 할 수없는 플러그인 제거; 정기적으로 시스템 쓰레기 및 과도한 배경 프로그램 청소; 주의를 기울여 관련없는 프로그램 폐쇄; 시작하는 동안 많은 파일을 열지 않도록합니다.

부팅 할 때 "로드"에 PS가 붙어있는 여러 가지 이유로 인해 발생할 수 있습니다. 손상되거나 충돌하는 플러그인을 비활성화합니다. 손상된 구성 파일을 삭제하거나 바꾸십시오. 불충분 한 메모리를 피하기 위해 불필요한 프로그램을 닫거나 메모리를 업그레이드하십시오. 하드 드라이브 독서 속도를 높이기 위해 솔리드 스테이트 드라이브로 업그레이드하십시오. 손상된 시스템 파일 또는 설치 패키지 문제를 복구하기 위해 PS를 다시 설치합니다. 시작 오류 로그 분석의 시작 과정에서 오류 정보를 봅니다.

<p> 다음 페이지 기능은 HTML을 통해 만들 수 있습니다. 단계에는 컨테이너 요소 만들기, 컨텐츠 분할, 탐색 링크 추가, 다른 페이지 숨기기 및 스크립트 추가가 포함됩니다. 이 기능을 통해 사용자는 세분화 된 컨텐츠를 탐색하여 한 번에 한 페이지 씩 만 표시 할 수 있으며 많은 양의 데이터 또는 콘텐츠를 표시하는 데 적합합니다. </p>

"로드"는 PS에서 파일을 열 때 말더듬이 발생합니다. 그 이유에는 너무 크거나 손상된 파일, 메모리 불충분, 하드 디스크 속도가 느리게, 그래픽 카드 드라이버 문제, PS 버전 또는 플러그인 충돌이 포함될 수 있습니다. 솔루션은 다음과 같습니다. 파일 크기 및 무결성 확인, 메모리 증가, 하드 디스크 업그레이드, 그래픽 카드 드라이버 업데이트, 의심스러운 플러그인 제거 또는 비활성화 및 PS를 다시 설치하십시오. 이 문제는 PS 성능 설정을 점차적으로 확인하고 잘 활용하고 우수한 파일 관리 습관을 개발함으로써 효과적으로 해결할 수 있습니다.

PS 로딩이 느린 이유는 하드웨어 (CPU, 메모리, 하드 디스크, 그래픽 카드) 및 소프트웨어 (시스템, 백그라운드 프로그램)의 결합 된 영향 때문입니다. 솔루션에는 하드웨어 업그레이드 (특히 솔리드 스테이트 드라이브 교체), 소프트웨어 최적화 (시스템 쓰레기 청소, 드라이버 업데이트, PS 설정 확인) 및 PS 파일 처리가 포함됩니다. 정기적 인 컴퓨터 유지 보수는 또한 PS 달리기 속도를 향상시키는 데 도움이 될 수 있습니다.

PS 카드가 "로드"되어 있습니까? 솔루션에는 컴퓨터 구성 (메모리, 하드 디스크, 프로세서) 확인, 하드 디스크 조각 청소, 그래픽 카드 드라이버 업데이트, PS 설정 조정, PS 재설치 및 우수한 프로그래밍 습관 개발이 포함됩니다.

PS에서 PDF를 배치로 내보내는 세 가지 방법이 있습니다 : PS 동작 기능 사용 : 파일을 기록하고 열기 및 PDF 작업을 내보내고, 루프에서 동작을 실행합니다. 타사 소프트웨어의 도움으로 : 파일 관리 소프트웨어 또는 자동화 도구를 사용하여 입력 및 출력 폴더를 지정하고 파일 이름 형식을 설정하십시오. 스크립트 사용 : 스크립트를 작성하여 배치 내보내기 로직을 사용자 정의하지만 프로그래밍 지식이 필요합니다.
