前言AnZhiYu主题有个音乐馆的页面,是通过调用Meting API来获取音乐消息的,但是默认的meting-api已经无法使用,需要更换CDN或自建API。不过我发现公益项目和自建API貌似都存在VIP歌曲的限制,由于部分歌曲需要VIP才能播放,导致只能获取到30s的试听,无法播放完整的歌曲。因此思考能否绕过VIP限制,获取完整的歌曲。 解决方案本文中所有方法均需要自建API,需要完成服务器的部署和域名的解析,将_config.anzhiyu.yml中的CDN.option.meting_api改为自己的API地址。 1. 使用Cookiemeting-api项目提供了使用Cookie获取音乐的方法,可以直接使用,但是此方法存在Cookie过期问题,需要定时更新Cookie,十分麻烦,因此不予采用。 12345// index.php// 设置cookieif ($server == 'netease') { $api->cookie('NMTID=00OtTy3WMXKPeSbp0qLuGy8FKJYOrAAAAGNCHbO ...
前言本教程介绍如何将 Python 项目上传到 PyPI,使用 twine 进行上传,并涵盖以下三种情况: 一般方式(基于 setup.py) 使用 Poetry 不使用 setup.py(基于 pyproject.toml) 你也可以直接查看官方文档 先决条件在开始之前,你需要: 在 GitHub 上创建一个新的仓库,并推送你的项目代码。 在 PyPI 上创建一个账号,并创建相应的项目(首次上传时自动创建) 1. 创建 API Token1.1 注册 PyPI 账号访问 PyPI 官网 并注册一个账号。 1.2 创建 API TokenPyPI 注册可能会要求开启2FA(两步认证),可以下载微软的验证App扫码通过或者直接安装浏览器插件保存密钥。 登录 PyPI 后,点击右上角的用户名。 选择 Account settings。 在 API tokens 部分,点击 Add API token(或者直接跳转)。 选择 Scope(可以选择适用于所有项目或仅适用于某个项目),不想麻烦直接选择 All projects即可。 生成 Token 并妥善保存。 1.3 ...
前言由于本人时常记不住RK R98键盘的组合键,又不想每次都去查,所以就写下这篇文章,方便自己查阅。 小键盘指示灯 常用快捷键 按键 按键功能 Fn + Enter 查看电池电量 Fn + A 切换到Windows系统组合键 Fn + S 切换到mac系统组合键 Fn + Ins Scrlk(Scroll Lock) Fn + PrtSc Home Fn + PgUp Pause Fn + PgDn End 背光控制 按键 功能 按键 功能 Fn + ↑ 字健背光亮度+ Fn + win 窗口锁定 Fn + ↓ 字健背光亮度- Fn + — _ 侧边灯切换 Fn + ← 动态背光速度- Fn + \ 背光效果切换 Fn + → 动态背光速度+ Fn + Space 长按三秒,恢复出厂设置 Fn + + 灯条亮度+ Fn + , < 切换背光颜色 Fn + - 灯条亮度- Fn + = + 切换灯条颜色 Fn + Esc 关闭所有灯光 背光录制方法 按Fn + 1!选择要自定义的背光注:Fn + 2@和 ...
前言最近编写了一个Flask应用,其API接口路由数量较多,为了方便管理和分组接口代码,使用了Flask的蓝图功能,在此处做一个记录。 蓝图介绍Flask 的蓝图(Blueprints)允许你将 Flask 应用分解成多个模块。这样可以更好地组织应用逻辑,使得应用更具可维护性和可扩展性。 每个蓝图可以有自己的路由、视图函数、模板和静态文件,这样可以将相关的功能分组。 通过使用蓝图,你可以将 Flask 应用拆分成多个模块,每个模块处理相关的功能,使得代码更加清晰和易于管理。 创建蓝图创建蓝图涉及到以下几个步骤: 定义蓝图:在一个独立的模块(文件)中定义蓝图。 注册蓝图:在主应用中注册蓝图,使其生效。 项目结构因为我的项目需求为纯API请求,不需要模板文件,因此选择直接将蓝图放在routes文件夹下 1234567891011app/│├─ app.py├─ config.py│└─ routes/ ├─ index.py ├─ token.py ├─ user.py └─ __init__.py 定义蓝图以index.py中的内容为例 Blueprint( ...
前言最近想要申请软著,发现需要提交60页的源代码,还有格式上的要求,所以写了个脚本来自动将代码整合到word文档中,自动去除了注释和空行,并会统计总行数。 此脚本需要安装Python环境,并安装python-docx模块。此脚本会整合所有代码文件,并生成一个word文档,但不能自动删减页数到60页,如果代码过多,需要手动删减。 脚本使用前需要用pip install python-docx安装python-docx模块。 将文件放入代码根目录,使用python .\word.py运行脚本,会在当前目录生成一个code.docx文件,打开后就可以看到整合后的代码。 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899import osimport re# pi ...
写在前面在完成Python项目时,我们一般需要编写一个requirements.txt文件,该文件包含了项目所依赖的库的名称和版本号,方便后续部署项目。但是如果项目使用了较多的第三方库,手动编写该文件会非常麻烦,这时我们可以借助一些工具来自动生成该文件。本文介绍了几种常用的自动生成依赖文件的方法。 1. pip freezePython的 pip 包管理工具提供了 freeze 命令,可以将当前环境中安装的包信息写入 requirements.txt 文件。 该命令会将所有安装的包都写入requirements.txt文件,包括系统自带的包和第三方包的依赖包。如果项目中有有第三方包依赖了很多其他的第三方包,那么这些依赖包都会列出来,不利于包管理。 1pip freeze > requirements.txt 或者 1python -m pip freeze > requirements.txt 推荐使用第二种方式,使用python调用而不是直接调用pip命令,因为第一种方式可能会出现版本冲突或者其他问题。 生成完后,可能还需要修改和删除里面不必要的安装包。因为很多安装 ...
本文修改主题为AnZhiYu主题,若使用其他主题,请自行确认修改位置。 原文出处 https://blog.bsgun.cn/posts/68c5cdb9 效果预览 查看图片 修改步骤本文与原文不同,将其集成为了pug模板,以便在配置文件中控制侧边栏显示以及需要倒计时的日期。 1.新建文件新建[Blogroot]\themes\butterfly\layout\includes\widget\card_countdown.pug 123456789if theme.aside.card_countdown.enable .card-widget.card-countdown .item-content .cd-count-left#countLeft span.cd-text 距离 span.cd-name#eventName!= theme.aside.card_countdown.event_name ...
宝塔面板www目录,从系统盘切换到数据盘的操作方法如下: 一:如果是纯净系统还没安装宝塔面板 /mnt 更换成你的另一块磁盘分区名称 第一步:进入mnt目录(mnt是数据盘名称,有很多是home,你的数据盘挂载位置是什么就用什么) 1cd /mnt 第二步:创建宝塔面板安装需要用的www目录 1mkdir www 第三步:建立/mnt/www的软连接到/www(也就是给系统根目录建立一个www的“快捷方式”指向/mnt/www) 1ln -s /mnt/www /www 第四步:正常安装宝塔面板即可 二:如果已经安装了宝塔面板和WEB环境 /mnt 更换成你的另一块磁盘分区名称 第一步:移动系统根目录下的www到mnt 1mv /www /mnt/www 第二步:建立/data/www的软连接到/www 1ln -s /mnt/www /www 第三步:重启服务器 1reboot 第四步:重启宝塔面板服务 1service bt restart 第五步:打开宝塔面板,C ...
写在前面本文介绍了如何在文章中添加条件勾选表单,并解决PJAX刷新后JS失效的问题。 原文出处 https://blog.qjqq.cn/posts/51e.html 添加方式在文章的头部添加以下代码: 隐藏评论表单12345678<style>.tk-comments > .tk-submit { opacity: 0; height: 0; transition: opacity 0.5s ease, height 0.5s ease; overflow: hidden;}</style> 监听复选框勾选状态123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051<script>document.addEventListener("DOMContentLoaded", function () { const checkboxes ...
前言最近编写了一个Flask应用,其API接口需要访问MySQL数据库读取数据,为了防止高并发情况下MySQL数据库的压力,使用了Redis作为缓存来提高API接口的响应速度。本文将介绍Redis的基本概念和在Python中的使用方法。 Redis简介Redis(Remote Dictionary Server)是一个开源的高性能键值对存储数据库,最初由 Salvatore Sanfilippo 开发,它在内存中存储数据,并提供了持久化功能,可以将数据保存到磁盘中,是一种NoSQL(not-only sql,非关系型数据库)的数据库。 它的数据结构十分丰富,基础数据类型包括:string(字符串)、list(列表,双向链表)、hash(散列,键值对集合)、set(集合,不重复)和 sorted set(有序集合),这使得它不仅仅是一个简单的键值存储,还可以用于存储和处理复杂的数据。 Redis 特点/优势Redis 具备许多特点和优势,所以在大规模应用和高并发场景中得到广泛应用。 丰富的数据结构:Redis 支持多种数据结构,包括字符串(String)、哈希(Hash)、列 ...