首页
壁纸
直播
留言板
更多
视频
统计
友情链接
实用工具
Search
1
给孙小姐的一封情书
102 阅读
2
armUbuntu | uboot常用指令
51 阅读
3
Linux | Linux通过stty命令操作串口设备(linux串口操作命令)
51 阅读
4
armUbuntu系统构建
49 阅读
5
编译 openwrt 及初始配置-及部分排错
45 阅读
取次花丛懒回顾
默认分类
C#
MySQL
LabVIEW
Java
Android
PHP
Python
handsome
相册
百度地图
嵌入式
嵌入式Ubuntu
linux
Unity
Golang
Rust
Search
标签搜索
C#
handsome
Git
动态壁纸
开源
Unity3d
Unity
csharp
魔傲手记
累计撰写
116
篇文章
累计收到
18
条评论
首页
栏目
取次花丛懒回顾
默认分类
C#
MySQL
LabVIEW
Java
Android
PHP
Python
handsome
相册
百度地图
嵌入式
嵌入式Ubuntu
linux
Unity
Golang
Rust
页面
壁纸
直播
留言板
视频
统计
友情链接
实用工具
搜索到
93
篇与
的结果
2024-06-18
Python 简单的网页列表文件脚本
功能可控制√是否允许下载√是否允许打包下载文件夹设置忽略文件(规划中。。。)√设置监听地址√设置监听端口代码import argparse from flask import Flask, send_file import os import zipfile app = Flask(__name__) def list_files(startpath, allow_file_download, allow_folder_zip_download, indent=""): file_list = "" for root, dirs, files in os.walk(startpath): level = root.replace(startpath, '').count(os.sep) indent_str = " " * (level) folder_name = os.path.basename(root) if allow_folder_zip_download: file_list += f"{indent}{indent_str}<strong>{folder_name}</strong> <a href='/zipdownload/{root}'><button>Download as ZIP</button></a><br>" else: file_list += f"{indent}{indent_str}<strong>{folder_name}</strong><br>" subindent = " " * (level + 1) for f in files: if allow_file_download: file_list += f"{indent}{subindent}<a href='/download/{os.path.join(root, f)}'>{f}</a><br>" else: file_list += f"{indent}{subindent}{f}<br>" return file_list @app.route('/') def index(): start_path = '.' # Change this to the desired directory file_list = list_files(start_path, args.allow_file_download, args.allow_folder_zip_download) return file_list @app.route('/download/<path:filename>') def download_file(filename): if args.allow_file_download: return send_file(filename, as_attachment=True) else: return "File download is not allowed." @app.route('/zipdownload/<path:folder>') def zip_download(folder): if args.allow_folder_zip_download: folder_name = os.path.basename(folder) zipf = zipfile.ZipFile(f'{folder_name}.zip', 'w', zipfile.ZIP_DEFLATED) for root, dirs, files in os.walk(folder): for file in files: zipf.write(os.path.join(root, file)) zipf.close() return send_file(f'{folder_name}.zip', as_attachment=True) else: return "Folder zip download is not allowed." if __name__ == '__main__': parser = argparse.ArgumentParser(description='Flask App with File Download Options') parser.add_argument('--host', default='0.0.0.0', help='Host address to listen on') parser.add_argument('--port', type=int, default=22222, help='Port to listen on') parser.add_argument('--allow_file_download', action='store_true', default=False, help='Allow file download') parser.add_argument('--allow_folder_zip_download', action='store_true', default=False, help='Allow folder zip download') args = parser.parse_args() app.run(host=args.host, port=args.port)
2024年06月18日
10 阅读
0 评论
0 点赞
此内容被密码保护
加密文章,请前往内页查看详情
2024年06月15日
7 阅读
0 评论
0 点赞
2024-06-13
正点原子 ATK-8266-V1.3 配置记录 (作为服务端,等待连接,AT指令)
正点原子 ATK 8266 配置笔记配置为 Server 端,等待连接 ,并且 以 TCP Server 模式 监听指定端口。设置 WiFi 工作 AP 模式(主机)AT+CWMODE=2响应:OKATK_ESP8266 模块支持 STA/AP/STA+AP 三种工作模式:STA 模式:ESP8266 模块通过路由器连接互联网,手机或电脑通过互联网实现对设备的远程控制。AP 模式:默认模式 ATK_ESP8266 模块作为热点,实现手机或电脑直接与模块通信,实现局域网无线控制。STA+AP 模式:两种模式的共存模式,(STA 模式)即可以通过路由器连接到互联网,并通过互联网控制设备;(AP 模式)也可作为 wifi 热点,其他 wifi 设备连接到模块。这样实现局域网和广域网的无缝切换,方便操作。设置 AP 模式下的参数AT+CWSAP="HandHeldFixedPointWifi","1234567891",6,4响应:OK格式:AT+CWSAP=<ssid>,<pwd>,<ch>,<ecn>指令只有在 AP 模式 开启后有效<ssid>字符串参数,接入点名称 <pwd>字符串参数,密码最长 64 字节 ASCII <ch>通道号 <ecn> - 0 OPEN - 1 WEP - 2 WPA_PSK - 3 WPA2_PSK - 4 WPA_WPA2_PSK查看已接入设备的 IP, MACAT+CWLIF响应:<ip addr>, <mac>这个时候你的 WiFi 模块已经提供了一个局域网,等待其他设备接入即可,可以设置通讯方式了。通信方式可以选择UTP与TCP,都是网络通信的一种方式,只不过协议不同,用处也不一样,详情翻看以往的博客,不再赘述。建立TCP连接启动多连接AT+CIPMUX=1只有当连接都断开后才能更改,如果开启过 server 需要 重启模块响应:OK如果已经处于连接状态,则返回 Link is builded配置为服务器AT+CIPSERVER=1,22222格式:AT+CIPSERVER==<mode>,<port><mode>模式0 关闭 server 模式1 开启 server 模式<port>端口号缺省值为 333响应:OK说明:(1) AT+CIPMUX=1 时才能开启服务器;关闭server模式需要重启(2) 开启 server 后自动建立 server 监听, 当有 client 接入会自动按顺序占用一个连接。获取本地 IP 地址AT+CIFSR响应:+CIFSR:APIP,<IP address> +CIFSR:APMAC,<MAC address> +CIFSR:STAIP,<IP address> +CIFSR:STAMAC,<MAC address>参数说明<IP address>本机目前的 IP 地址 第一行为 AP 下的 IP,第二行为 STA 下的 IP <MAC address>本机目前的 MAC 地址开启透传AT+CIPMODE=1响应:OK出现箭头就可以发送数据了
2024年06月13日
20 阅读
0 评论
0 点赞
2024-06-07
nvm-windows | 管理nodejs版本神器 安装 及 设置国内代理镜像
nvm安装地址:https://github.com/coreybutler/nvm-windows/releases选择红框版本进行下载。nvm安装步骤:运行其中.exe文件第一步 :接受协议第二步:设置node.js默认存放位置,点击下一步第三步:点击安装检查环境变量:打开环境变量,检查用户中是否已经存在如下两个变量,并检查系统变量“PATH”中是否包含:检查nvm是否可用nvm -v如下所示即为成功:设置国内代理nvm 国内镜像源配置阿里云nvm npm_mirror https://npmmirror.com/mirrors/npm/ nvm node_mirror https://npmmirror.com/mirrors/node/腾讯云nvm npm_mirror http://mirrors.cloud.tencent.com/npm/ nvm node_mirror http://mirrors.cloud.tencent.com/nodejs-releanpm 国内镜像源配置查看当前的镜像源npm get registry设置淘宝镜像源最新地址 淘宝 NPM 镜像站喊你切换新域名啦!npm config set registry https://registry.npmmirror.com切换回官方镜像源(一般不用)npm config set registry https://registry.npmjs.org 查询可用node.js并安装:nvm list available返回截图:LTS为长期持续维护版,建议下载第二列中的版本。下载可用的版本举例如下:nvm install 12.15.0检查node和npm可用:node -v npm -v若可用,返回版本号
2024年06月07日
9 阅读
0 评论
0 点赞
2024-06-05
本站维护的国内镜像站
GitHub:https://ghproxy.us.kg/(20240605 暂时出了点问题,能用,但是 edge 会报危险)Gravatar:https://gravatar.us.kg/
2024年06月05日
17 阅读
0 评论
0 点赞
1
...
6
7
8
...
19