python實現http文件服務器訪問下載

//1.py

import http.server
import socketserver
import os
import threading
import sys# 獲取當前腳本所在的目錄
DIRECTORY = os.path.dirname(os.path.abspath(__file__))# 設置服務器的端口
PORT = 8000# 自定義Handler,將根目錄設置為腳本所在目錄
class MyHTTPRequestHandler(http.server.SimpleHTTPRequestHandler):def __init__(self, *args, **kwargs):super().__init__(*args, directory=DIRECTORY, **kwargs)# 創建服務器對象
httpd = socketserver.TCPServer(("", PORT), MyHTTPRequestHandler)# 定義一個函數,用于監聽鍵盤輸入
def wait_for_quit():input("按任意鍵退出服務...\n")print("正在關閉服務器...")httpd.shutdown()  # 關閉服務器httpd.server_close()  # 釋放端口print("服務器已關閉。")sys.exit(0)  # 退出程序# 啟動服務器
print(f"服務器已啟動,訪問地址: http://<電腦的IP地址>:{PORT}")
print(f"服務器根目錄: {DIRECTORY}")# 啟動一個線程來監聽鍵盤輸入
quit_thread = threading.Thread(target=wait_for_quit)
quit_thread.daemon = True  # 設置為守護線程,主線程退出時自動結束
quit_thread.start()# 啟動服務器主循環
try:httpd.serve_forever()
except KeyboardInterrupt:print("\n服務器已關閉。")

在這里插入圖片描述

回車鍵退出服務器

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/67087.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/67087.shtml
英文地址,請注明出處:http://en.pswp.cn/web/67087.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Cpp::靜態 動態的類型轉換全解析(36)

文章目錄 前言一、C語言中的類型轉換二、為什么C會有四種類型轉換&#xff1f;內置類型 -> 自定義類型自定義類型 -> 內置類型自定義類型 -> 自定義類型隱式類型轉換的坑 三、C強制類型轉換static_castreinterpret_castconst_castdynamic_cast 四、RTTI總結 前言 Hell…

2024年終總結:技術成長與突破之路

文章目錄 前言一、技術成長&#xff1a;菜鳥成長之路1. 學習與實踐的結合2. 技術分享與社區交流 二、生活與事業的平衡&#xff1a;技術之外的思考1. 時間管理與效率提升2. 技術對生活的積極影響 三、突破與展望&#xff1a;未來之路1. 技術領域的突破2. 未來規劃與目標 四、結…

ComfyUI實現老照片修復——AI修復老照片(ComfyUI-ReActor / ReSwapper)解決天坑問題及加速pip下載

AI修復老照片&#xff0c;試試吧&#xff0c;不一定好~~哈哈 2023年4月曾用過ComfyUI&#xff0c;當時就感慨這個工具和虛幻的藍圖很像&#xff0c;以后肯定是專業人玩的。 2024年我寫代碼去了&#xff0c;AI做圖沒太關注&#xff0c;沒想到&#xff0c;現在ComfyUI真的變成了工…

思科交換機telnet配置案例

目錄 1.telnet簡述2.網絡拓撲3.設備說明4.網絡配置4.1 電腦PC ip設置4.2 網絡交換機telnet配置 5.小結 1.telnet簡述 Telnet是遠程登錄服務的一個協議&#xff0c;該協議定義了遠程登錄用戶與服務器交互的方式。它允許用戶在一臺聯網的計算機上登錄到一個遠程分時系統中&#…

WPS數據分析000006

一、排序 開始→ 排序 同文件→選項→自定義序列→輸入序列 二、篩選 高級篩選 條件區域要與列表區域一樣。 三、條件格式

vofa++使用方法

控件區可以添加控件用來啊多樣顯示 點擊一個控件然后右鍵可以選擇要添加顯示的數據&#xff0c;點all表全部顯示&#xff0c; 點auto可以自動布局 要用控件需要選擇協議&#xff0c;不知道協議具體格式可以點擊問號看看&#xff0c;并且最好用printf重定義來實現 比如我要實現F…

達夢拷貝DM_HOME的復制安裝

近期一個項目需求&#xff0c;需要在沒有安裝包的情況下&#xff0c;將達夢數據庫安裝到虛機上&#xff08;生產機上安裝了達夢&#xff09;&#xff0c;故采用直接打包生產機DM_HOME的方式拷貝至虛機&#xff0c;再依次執行達夢的部分指令完成安裝。以下為驗證的步驟&#xff…

tomcat的accept-count、max-connections、max-threads三個參數的含義

tomcat的accept-count、max-connections、max-threads三個參數的含義 tomcat的accept-count、max-connections、max-threads三個參數的含義 max-connections&#xff1a;最大連接數 最大連接數是指&#xff0c;同一時刻&#xff0c;能夠連接的最大請求數 需要注意的是&#x…

ui文件轉py程序的工具

源博客連接&#xff1a; PyCharm中利用外部工具uic轉成的py文件&#xff0c;里面全是C代碼&#xff0c;并非python類型的代碼&#xff0c;導致大量報錯。。。_pyside6-uic為什么把ui轉為了c-CSDN博客 如果想把ui文件轉為py文件&#xff0c;首先設置pycharm的外部工具&#xf…

hedfs和hive數據遷移后校驗腳本

先談論校驗方法&#xff0c;本人騰訊云大數據工程師。 1、hdfs的校驗 這個通常就是distcp校驗&#xff0c;hdfs通過distcp遷移到另一個集群&#xff0c;怎么校驗你的對不對。 有人會說&#xff0c;默認會有校驗CRC校驗。我們關閉了&#xff0c;為什么關閉&#xff1f;全量遷…

61,【1】BUUCTF WEB BUU XSS COURSE 11

進入靶場 左邊是吐槽&#xff0c;右邊是登錄&#xff0c;先登錄試試 admin 123456 admiin# 123456 admin"# 123456 不玩了&#xff0c;先去回顧下xss 回顧完就很尷尬了&#xff0c;我居然用SQL的知識去做xss的題 重來 吐槽這里有一個輸入框&#xff0c;容易出現存儲型…

海外問卷調查如何影響企業的經營?在品牌建設中有何指導意義?

市場調查的定義&#xff1a;通過科學的方法&#xff0c;有目的地、系統地搜集整理一些市場信息&#xff0c;其目的在于了解當下市場現狀和發展前景&#xff0c;為企業生產和品牌打造提供一些科學的指導意見&#xff0c;這是任何大企業、中小企業、初創企業都必須重視的一個重要…

STM32新建不同工程的方式

新建工程的方式 1. 安裝開發工具 MDK5 / keil52. CMSIS 標準3. 新建工程3.1 寄存器版工程3.2 標準庫版工程3.3 HAL/LL庫版工程3.4 HAL庫、LL庫、標準庫和寄存器對比3.5 庫開發和寄存器的關系 4. STM32CubeMX工具的作用 1. 安裝開發工具 MDK5 / keil5 MDK5 由兩個部分組成&#…

idea maven本地有jar包,但還要從遠程下載

idea 中&#xff0c;java 工程執行 maven reimport&#xff0c;報jar報無法下載。 我奇了個怪&#xff0c;我明明在本地倉庫有啊&#xff0c;你非得從遠程下載&#xff1f; 我從供應商那里拿來的&#xff0c;遠程當然沒有了。 這太奇葩了吧&#xff0c;折騰好久不行。 后來…

springboot 調用 c++生成的so庫文件

一、創建c文件 SoTest.h #pragma once class SoTest {int Add(int a,int b); };SoTest.cpp #include "SoTest.h"int SoTest::Add(int a, int b) {return a b; }二、創建so文件 /home/ubuntu/projects/SoTest/bin/x64/Debug/libSoTest.so 三、java代碼 Maven依…

Windows 靶機常見服務、端口及枚舉工具與方法全解析:SMB、LDAP、NFS、RDP、WinRM、DNS

在滲透測試中&#xff0c;Windows 靶機通常會運行多種服務&#xff0c;每種服務都有其默認端口和常見的枚舉工具及方法。以下是 Windows 靶機常見的服務、端口、枚舉工具和方法的詳細說明&#xff1a; 1. SMB&#xff08;Server Message Block&#xff09; 端口 445/TCP&…

250125-package

1. 定義 包就是文件夾&#xff0c;作用是在大型項目中&#xff0c;避免不同人的編寫的java文件出現同名進而導致報錯&#xff1b;想象一個場景&#xff0c;在一個根目錄中&#xff0c;每一個人都有自己的一個java文件夾&#xff0c;他可以將自己編寫的文件放在該文件夾里&…

系統思考—動態問題分析

“不是解決問題&#xff0c;而是根本改變它的方式&#xff0c;才能真正創造持久的成功。”——彼得德魯克 在很多情況下&#xff0c;企業面對問題時&#xff0c;總會急于尋找解決方案&#xff0c;但這些方案往往只是暫時的“應急措施”。它們看似有效&#xff0c;卻難以從根本…

ASP.NET Core WebAPI的異步及返回值

目錄 Action方法的異步 Action方法參數 捕捉URL占位符 捕捉QueryString的值 JSON報文體 其他方式 Action方法的異步 Action方法既可以同步也可以異步。異步Action方法的名字一般不需要以Async結尾。Web API中Action方法的返回值如果是普通數據類型&#xff0c;那么返回值…

系統架構設計師教材:信息系統及信息安全

信息系統 信息系統的5個基本功能&#xff1a;輸入、存儲、處理、輸出和控制。信息系統的生命周期分為4個階段&#xff0c;即產生階段、開發階段、運行階段和消亡階段。 信息系統建設原則 1. 高層管理人員介入原則&#xff1a;只有高層管理人員才能知道企業究竟需要什么樣的信…