写在前面目前本人的工作需要借助手机拍摄大量照片怎么无损发送到电脑成了一个大难题不想登录第三方软件直接传照片就行。市面上的各种软件都需要付费或者有广告均不能满足我的需求刚好现在AI发展这么迅速于是就有了这篇分享一起来看看我做了一个什么小工具吧注移动终端跟PC端需同一个局域网简单的说就是需要连接到同一个WIFI不然用不了效果如下上传界面上传成功一、生成代码借助AI工具生成Python代码并不断优化代码。此处我们选择Python工具生成工具代码生成打包命令打包命名py-3-m PyInstaller-F-w-i logo.ico AirPic.py最终选用代码from flask import Flask,request,render_template_string import qrcode import socket import os from datetime import datetime import threading import sys appFlask(__name__)# 路径处理ifgetattr(sys,frozen,False):APP_FOLDERos.path.dirname(sys.executable)else:APP_FOLDERos.path.dirname(os.path.abspath(__file__))SAVE_FOLDERos.path.join(APP_FOLDER,photos)os.makedirs(SAVE_FOLDER,exist_okTrue)# 前端增加上传状态、加载提示、防重复点击成功弹窗 UPLOAD_PAGE!DOCTYPE htmlhtmlheadmeta charsetutf-8meta nameviewportcontentwidthdevice-width, initial-scale1.0titlePicLink 图传/titlestyle*{box-sizing:border-box;margin:0;padding:0}body{background:#f5f5f7;font-family:Arial;padding:30px}.container{max-width:400px;margin:0auto;background:white;border-radius:20px;padding:30px;box-shadow:02px15pxrgba(0,0,0,0.05)}h2{text-align:center;margin-bottom:20px}input{width:100%;padding:12px;margin:15px0;border:1px solid #ddd;border-radius:12px}.btn-row{display:flex;gap:10px;margin-top:10px}button{flex:1;background:#007aff;color:white;border:none;padding:14px;border-radius:12px;font-size:16px;transition:all0.2s}button.clear{background:#ff3b30}button:disabled{background:#999;cursor:not-allowed;opacity:0.8}.tip{text-align:center;margin:10px0;color:#333;font-size:14px}.status-text{text-align:center;margin:15px0;font-size:14px;color:#666;height:20px}.copyright{text-align:center;margin-top:30px;color:#999;font-size:14px;cursor:pointer}/style/headbodydiv classcontainerh2 PicLink 图传/h2input typefileidphotoFileacceptimage/*multiplediv classtipidfileTip未选择图片/divdiv classstatus-textidstatusText/divdiv classbtn-rowbutton iduploadBtnonclickuploadFile()确认上传/buttonbutton classclearonclickclearFile()清除选择/button/div/divdiv classcopyrightonclickwindow.open(https://blog.csdn.net/weixin_45386955,_blank)©2026周国波/divscriptlet fileList[];let isUploadingfalse;constfileInputdocument.getElementById(photoFile);constfileTipdocument.getElementById(fileTip);conststatusTextdocument.getElementById(statusText);constuploadBtndocument.getElementById(uploadBtn);// 监听文件选择fileInput.addEventListener(change,function(){fileListArray.from(this.files);if(fileList.length0){fileTip.innerText已选中fileList.length 张图片;}else{fileTip.innerText未选择图片;}statusText.innerText;});// 上传async functionuploadFile(){// 防止重复点击if(isUploading)return;if(fileList.length0){alert(请先选择图片);return;}// 上传中锁定按钮isUploadingtrue;uploadBtn.disabledtrue;statusText.innerText⏳ 上传中请稍候...;constformDatanewFormData();fileList.forEach(file{formData.append(photo,file);});try{constresawaitfetch(/upload,{method:POST,body:formData});if(res.ok){// ✅ 成功弹窗 清空alert(✅ 上传成功);clearFile();}else{alert(❌ 上传失败);}}catch(err){alert(❌ 网络异常上传失败);}// 解锁isUploadingfalse;uploadBtn.disabledfalse;statusText.innerText;}// 清除选中文件functionclearFile(){fileInput.value;fileList[];fileTip.innerText未选择图片;statusText.innerText;}/script/body/html app.route(/)defindex():returnUPLOAD_PAGE app.route(/upload,methods[POST])defupload():filesrequest.files.getlist(photo)forfile in files:iffile and file.filename:filenamedatetime.now().strftime(%Y%m%d_%H%M%S_)file.filename save_pathos.path.join(SAVE_FOLDER,filename)file.save(save_path)returnok# 获取局域网IP defget_ip():try:ssocket.socket(socket.AF_INET,socket.SOCK_DGRAM)s.connect((8.8.8.8,80))ips.getsockname()[0]s.close()returnip except:return127.0.0.1# 显示二维码 defshow_qr():import time time.sleep(1)ipget_ip()urlfhttp://{ip}:5000print(*50)print(PicLink 图传服务已启动)print(访问地址:,url)print(图片保存路径:,SAVE_FOLDER)print(*50)qrcode.make(url).show()if__name____main__:threading.Thread(targetshow_qr,daemonTrue).start()app.run(host0.0.0.0,port5000,debugFalse,use_reloaderFalse)二、软件打包将上一步准备的代码保存为AirPic.pyAirPic可以替换你喜欢的名字并按下图依次执行即可获得安装包。1.将代码和logo存到同一个文件夹2.命令行跳转到该文件夹3.执行“py -3 -m PyInstaller -F -w -i logo.ico AirPic.py”打包命令 我们需要的安装包就在dist文件夹里面三、安装测试将AirPic.exe安装包双击打开此时会自动弹出一个二维码并在同一位置生成“photos”文件夹以后照片都会在这个文件夹里面。然后手机扫描这个二维码会弹出上传界面。上传界面上传成功此时照片就可以在“photos”文件夹中查看注需连接到与电脑同一个局域网的WiFi。电脑端手机端声明以上内容均为交流学习不涉及商用四、写在最后至此这个局域网传照片小工具就完成了欢迎大家来体验相关推荐【uniapp】微信小程序无偿分享资料—激励广告的玩法【uniapp】微信小程序订阅/通知/模板消息—私发/群发【uniapp】使用admin模板搭建uniCloud后端管理系统© 原创不易引用转载请联系 周国波