小天管理 发表的所有内容
-
最近让大模型帮忙开发了一个浏览器脚本(油猴脚本),实现控制 B 站动画片播放进度的目的。 缘起 最近儿子晚上洗澡后会闹着要看动画片才愿意上床睡觉。好说歹说,终于同意看一集就睡觉。 考虑到视力保护和观看体验,我没有选择手机,而是选择电脑播放 B 站的动画片。屏幕大,而且无需担心出现可能不适合儿童的片头广告,体验非常友好。 但动画片有长有短,太长的视频如果中途掐掉,会导致小孩愤怒和哭泣。所以只能每次拖动进度条到大概最后四分钟的位置。 但每次都要操作还是显得麻烦,而且小孩以后说不定发现我在骗他,那就不太好了。 既然是浏览器,何不借助大模型快速写个扩展脚本试试自动化操作? 借助 Claude.ai 写脚本,进度控制有严重问题 一开始我尝试用最近很火的 claude.ai ,写出来的油猴脚本能跳转到最后四分钟,但一播放就会反复回到最后四分钟位置,尝试两次修复,但给出的代码问题依旧。问句如下: 开发一个针对 bilibili 站点视频播放控制的油猴脚本,我希望在播放视频时能够自动跳转到最后四分钟的位置开始播放。 改用 kimi 重写,第一版核心功能非常完美 也许是外国人的大模型也许对 b 站的代码结构不太熟悉?那就试试到处在发推广的 kimi 吧。 我将差不多的问题发给 Kimi ,没想到包含核心功能的第一版代码顺利运行。 // ==UserScript== // @name Bilibili Auto Skip to Last Four Minutes // @namespace http://tampermonkey.net/ // @version 0.1 // @description Automatically skip to the last four minutes of a Bilibili video // @author Your Name // @match *://*.bilibili.com/* // @grant none // ==/UserScript== (function() { 'use strict'; // 等待视频元素加载 window.addEventListener('load', function() { // 获取视频播放器 var player = document.querySelector('video'); if (player) { // 检查视频时长 player.addEventListener('loadedmetadata', function() { var duration = player.duration; // 计算跳转时间点,确保不超过视频总时长 var skipTime = Math.max(duration - 4 * 60, 0); // 跳转到指定时间点 player.currentTime = skipTime; }); } }); })(); 小幅优化 兼顾小孩和大人需求 事情到此算是解决了。不过有个小问题,脚本默认针对所有视频,如果是我自己要看 B 站的长视频,就得将进度条拖回起始位置,略显麻烦。 为此,需要给脚本增加一个判断,只针对动画片自动跳转进度。 我尝试让 kimi 自己判断,它没法准确判断当前视频是否为动画片,只是提供了正确的思路,比如根据视频标签等进行判断,实际给的代码无效。 如果视频标签标注了视频属于动画片,那么通过标签来判断就比较准确。稍微看了几个视频详情页的 HTML 源代码,里面确实有视频的标签信息,动画片的话一般会带上“动画片”这个标签。 继续问 Kimi: 判断是否为动画片的规则如下, 比如读取视频详情页的源代码,https://www.bilibili.com/video/BV1nA411x7gT/?spm_id_from=333.788.recommend_more_video.3&vd_source=8b616b33732cab00e369c8f78a43bb13 找到 `[{"tag_id":26517,"tag_name":"动画短片","music_id":"","tag_type":"old_channel","jump_url":"","showDetail":false,"showReport":false,"timeOut":null},{"tag_id":42837,"tag_name":"益智","music_id":"","tag_type":"old_channel","jump_url":"","showDetail":false,"showReport":false,"timeOut":null},{"tag_id":285829,"tag_name":"早教","music_id":"","tag_type":"old_channel","jump_url":"","showDetail":false,"showReport":false,"timeOut":null},{"tag_id":17205837,"tag_name":"11 月打卡挑战 W2","music_id":"","tag_type":"old_channel","jump_url":"","showDetail":false,"showReport":false,"timeOut":null}]` 这段代码,看看 tag_name 有没有 “动画”,如果有,判定为动画片 返回的脚本为: // ==UserScript== // @name Bilibili Auto Skip to Last Four Minutes for Animation // @namespace http://tampermonkey.net/ // @version 0.1 // @description Automatically skip to the last four minutes of a Bilibili animation video // @author Kimi + 廖智海 // @match *://*.bilibili.com/video/* // @grant none // ==/UserScript== (function() { 'use strict'; // 等待页面加载 window.addEventListener('load', function() { // 模拟发送请求获取视频标签信息 fetch('/api/view?id=' + BV_ID).then(response => response.json()).then(data => { // 检查是否存在 "动画" 标签 const isAnimation = data.tags.some(tag => tag.tag_name.includes('动画')); if (isAnimation) { // 获取视频播放器 var player = document.querySelector('video'); if (player) { // 检查视频时长 player.addEventListener('loadedmetadata', function() { var duration = player.duration; // 计算跳转时间点,确保不超过视频总时长 var skipTime = Math.max(duration - 4 * 60, 0); // 跳转到指定时间点 player.currentTime = skipTime; }); } } }).catch(error => { console.error('Error fetching video tags:', error); }); }); // 获取 BV 号 function BV_ID() { const urlParams = new URLSearchParams(window.location.search); return urlParams.get('bvid'); } })(); 过了几天,发现脚本针对有些视频不生效。重新看了下源代码,不同视频可以依据不同的条件来判断是否为动画片。问句里加了一句: 增加一个判断方法,如果 html 源代码里面有 <div class="firstchannel-tag" data-v-000c5325=""><a href="//www.bilibili.com/v/douga/" class="tag-link">动画</a></div>,div 包含一个链接文字为‘动画’或者‘动画片’的页面,则认定为动画片。 得到的代码把之前的判定方法替换了。于是又稍作说明: 我指的是这个判定方法和之前那个 tag 名称的判定方法并存。 更新代码如下: // ==UserScript== // @name Bilibili Auto Skip to Last Four Minutes for Anime Videos // @namespace http://tampermonkey.net/ // @version 0.1 // @description Automatically skip to the last four minutes of a Bilibili video if it is tagged as an anime or contains a specific tag link // @author Your Name // @match *://*.bilibili.com/video/* // @grant none // ==/UserScript== (function() { 'use strict'; // 等待页面加载 window.addEventListener('load', function() { // 检查 script 标签内容中是否包含"动画"标签 var scriptTags = document.getElementsByTagName('script'); var isAnimeByTag = false; for (var i = 0; i < scriptTags.length; i++) { var scriptContent = scriptTags[i].textContent; if (scriptContent.includes('"tag_name":"动画短片"') || scriptContent.includes('"tag_name":"动画"')) { isAnimeByTag = true; break; } } // 检查页面中是否存在特定的 div 元素 var isAnimeByLink = document.querySelector('div.firstchannel-tag a.tag-link[href*="douga/"]').textContent === '动画' || document.querySelector('div.firstchannel-tag a.tag-link[href*="douga/"]').textContent === '动画片'; // 如果任一条件满足,则跳转到视频的最后四分钟 if (isAnimeByTag || isAnimeByLink) { var player = document.querySelector('video'); if (player) { player.addEventListener('loadedmetadata', function() { var duration = player.duration; var skipTime = Math.max(duration - 4 * 60, 0); player.currentTime = skipTime; }); } } }); })(); 小孩更大以后,能够识破父亲的诡计,这一招应该会失灵,不过那是以后的事情,以后再说,先解决已知问题即可,无需过度优化。 结语 有了生成式 AI ,不会前端技术,只需描述清楚自己的需求,稍微知道一点原理,就能快速获得能够运行的简单脚本,给工作和生活带来便利。 如果你有类似需求或体验,欢迎交流探讨。
-
作为一名 AI 产品开发者,就一定会接触到 API 接口,特别是 OpenAI 的 GPT-4o API 接口、Claude API 接口,当需要调用更高端的 API 接口时,市面上的解决方案往往要么价格昂贵,要么服务不够稳定。又一次经过朋友介绍,让我去 Neuronicx 这个平台看看,刚开始觉得这家平台比别家的看着更专业一些,还有 24 小时的客服这些,就去购买了一个 GPT 2500 的初创组织,用了一个月后没啥问题。主要是他们家价格也不算太贵,所以我也打算分享下这个平台,有需求的朋友可以去看看。 了解了这家平台的历史后,发现他们是 2022 年就开始运营 AI 衍生服务,包括 API 接口购买、AI 算力供应、AI 数据服务等,还挺齐全的,相信这篇文章对于做 AI 的小伙伴应该会有帮助。 Neuronicx 平台除了提供这种原生接口外,还有提供中转接口,名字叫 DuckAGI 中转站,我朋友就是做大模型训练的,他们也在他们家购买了许多原生接口和中转接口。中转接口主要是帮一些中国大陆和香港的用户绕开地区限制,很多人应该都知道,这 2 个地区是无法使用 OpenAI 的服务的,所有需要有特殊的处理技术。基本上尝试用下来稳定率有 90%吧,平台的宣传上 100%,这点还是有一些偏差,但总体不影响我们业务的使用。 我记得有一次,我的账号突然被官方封禁了,还没用多久就没了,然后去官网看了他们的介绍,打算再买一个,然后看到他们是有提供质保的,我就去问了 Neuronicx 他们的客服,没想到的是他们直接给我换了一个,直接让我省掉了再买一个的费用,节省了不少时间和成本。所以,这也是我比较喜欢这家平台的原因,售后上还是可以。 虽然这家平台他们前期的口碑一般,好想是被许多同行诋毁以及供应链不稳定等,导致许多产品出了问题,售后上有许多压力。随着他们业务越做越大,现在的售后服务很明显比之前好了很多,也专业了很多,这也是一个新型平台的必经之路吧。总之,还是比较推荐这家平台的。当然,大家也不一定要选择他们,市场上平台还是很多的,我只是给大家分享一个参考。 我的态度就是,对于不良的平台我就会曝光,避免大家受骗,对于好的平台我会分享。 总的来说,Neuronicx 平台对我们的项目提供了不少帮助,这也是我写这篇文章的原因之一,特别是在涉及到复杂 API 需求时,提供了无可替代的支持。我非常期待这家平台能够多推出点活动,还让我继续受益哈哈,如果官方能看到我的文章的话。 #Neuronicx #ChatGPT #API
-
感觉也没啥亮点吧,就个人使用,现在用的 12pm ,电池不太行了,83 健康度,放着就会掉电。 换 15 或者 16 的话,什么型号比较合适? 如果入 15 的话,一般是什么价?
-
太恶心了。微软做的这个虚假机系统。比 vmware 差了不止一条街。 笔记本只有 wifi 网卡,设置了网络,共享,桥接,然后可以正常连通网络; 后面不知道什么原因就不行了; 重置网络,重新配置了一下,又可以了; 过一阵子之后主机和虚拟机可以通讯,可是虚拟机上不了网; 实在不懂它的配置设置是怎样的。 PS:op 大学考过 cisco ccna ,
-
新的 8gen4 分数出炉了,https://browser.geekbench.com/v6/cpu/7720191 单核 3216 ,多核 10015 a17 pro 分数 单核 2800 ,多核 7100 已知 a18 pro 单核提升 15% 多核提升 20% 那么那么推算单核 3220 ,多核 8250 苹果芯片的单核优势已经不复存在,其他硬件优势也没了,今后要全靠 ios 死撑了 (顺便 14900k 。单核 2800 ,多核 16000 )
-
大家好,我有个问题想请教大佬们: 我有一台 N100 小主机,现在想扩容一个大盘,但是是 3.5 寸的,无法放入小主机。考虑过 USB 硬盘盒或者硬盘柜,但是都 USB 连接,稳定性成问题。 有没有什么办法可以把 3.5 寸盘直接连接到小主机上的? 我看别的帖子有说用转接卡转 SATA 出来,是否意味着需要拆壳子,没壳子运行? 能否像服务器扩展 8088 柜一样扩展呢?
-
早上才发现自己的头发现在已经长的要命 今天快 11 点才下 也不打算骑车回去了 直接公司地上凑合一晚上了 很长时间没有尝到波本威士忌的味了
-
我下载了一套喜欢的资源,一个压缩包 190 多 G ,解压之后,发现全是 4K 的图片和视频,好家伙,单张图片大小就占了十几 M ,视频的体积更是直接爆炸,比如说,一个 3 分多钟的视频就占了 1.21G ! 对我来说,1080P 已经非常清晰了,我也没有 4K 屏幕设备,我个人感觉没啥必要,仅是为了提升那点肉眼难以擦觉的画质提升,太过浪费储存空间了 你们能分辨 1080P 与 4K 的区别吗? 4K 对你们来说是必要的吗? 4K 与 1080P 的占用空间是 4 倍的关系,我喜欢这套资源,要是这套资源是 1080p 的,50G 以内的空间可以拿下,我会选择珍藏,但现在是将近 200G ,我在考虑要不要删掉了
-
请问 iPhone 通过数据线备份到本地后,发现有一个文件夹在这边,我为了省下空间,是否可以把这个文件上传备份到 iCloud 或者其它网盘,后续再恢复到该文件夹中。 担心出现的问题:会不会有什么文件链表什么的,从网盘恢复的文件无法读取或者路径问题。
-
买 iPhone 16 Pro Max 的话
-
正文如题,这边还没有收房,但是物业费开始计算了,到现在四年没有缴纳了 我想这四年我完全没有享受到任何的服务,还要全额缴纳,与情与理感觉都行不通啊。 如果打官司的话,有哪些法律或者依据支持要求减免部分物业费
-
https://www.v2ex.com/t/825252 好像也没解决。 今天问 AI 和翻帖子也没找到答案。 我在 wsl 用 sqlcipher 输入密码是可以正常打开数据库的。 然后用 Navicat Premium Lite 打开数据库需要选择 sqlcipher legacy v3 才正常。 问 AI 试了各种方法,也不行,根据 AI 指引,在 win 下用 vcpkg 都安装了 sqlcipher ,也设置了对应的路径。
-
该 bug100%能复现,与 DPI 缩放无关。 在任意一个最大化窗口的程序(例如 word 或者 chrome ),光标按住程序的标题栏,沿着桌面最顶部向最左边拖动,此时程序窗口将会变成桌面 1/4 大小。这时 bug 出现了,程序窗口上面会出现一条白色横条,十分影响观感。 已经在微软反馈中心反映了这个问题,很显然,这个 bug 并没有得到修复。
-
网站:野生布道师 网址: https://www.guzongxiang.com RSS: https://www.guzongxiang.com/rss
-
寻求全尺寸的、手感好的,有线无线均可。 像这种仅缺少数字键盘而又保留编辑区的,也可以接受。不过市面上好像就罗技这一款。
-
1 、不是传统 UI 那种按钮之类的元素 2 、几乎是图片元素互动,类似游戏,又较为简单
-
实在离不开 ipv6 ,毕竟要不到公网 V4 ,我又懒,只想省设备钱,最终手撕 sing-box 配置,利用process_name以及outbound将和 qb 有关的进程丢到 direct 里面,顺带把整台 nas 的科学环境都整好了,主打的省心+降本
-
Surge 5 5 设备出 4 个位置,145 一位 拉群联系,跳车不退款,换设备可自行反激活。 后期升级可以商量均摊升级,不放心可走鱼。
-
在前端使用加解密方式容易暴露密钥(或许一定会),但是如果把密钥藏起来,藏到二进制中或许就不容易被发现了。 sm4-sdk 是我用来验证想法的 demo ,下面介绍大概思路,以及有些踩坑的内容 一、基本情况 1 、使用 wasm-pack 这个工具来创建项目,编译成 web 类型 wasm-pack new sm4-sdk wasm-pack build --target web 2 、使用了一个简单的国密库 cargo add smcrypto 经过一番研究发现它的 Padding 模式是 PKCS5Padding 3 、使用dotenv达成编译阶段注入变量的目的 从前端的工程化的一些经验中借鉴来的,dotenv支持从环境变量和.env文件读取变量, cargo add dotenv // file config.rs use dotenv_codegen::dotenv; pub const KEY: &str = dotenv!("SM4_SDK_KEY"); pub const IV: &str = dotenv!("SM4_SDK_IV"); 4 、如何使用 克隆这个项目,将.env.example修改为.env文件,修改里面的密钥内容,执行 wasm-pack build --target web 二、踩坑 1 、安装wasm-pack 安装wasm-pack命令有两种方式,通过cargo或者npm 如果是 windows 环境,建议设置 default host 等设为msvc // file settings.toml default_host_triple = "x86_64-pc-windows-msvc" default_toolchain = "stable-x86_64-pc-windows-msvc" 2 、使用github action自动打包 希望通过github action的环境变量提供给项目打包时使用,可能dotenv没有支持好,可能是我配置不对。不过不折腾的方式是配置repository secrets,使用时新建一个.env文件 // file workflows/wasm-pack.yml - name: create env file run: | touch .env echo SM4_SDK_KEY=${{ secrets.SM4_SDK_KEY }} >> .env echo SM4_SDK_IV=${{ secrets.SM4_SDK_IV }} >> .env 三、如何使用 参考项目中的example.html的做法,这个项目并没有上传到 npm 上, <script type="module"> import init, { encrypt_to_base64, decrypt_from_base64 } from './pkg/sm4_sdk.js'; const run = async () => { await init(); const origin = "hello world"; const encoded_str = encrypt_to_base64(origin); console.log(encoded_str); // ${encoded_str} const decoded_str = decrypt_from_base64(encoded_str); console.log(decoded_str === origin); appendResult(encoded_str); } run(); // checkout console for result </script>
-
MacBook Pro ,M3 Pro 的型号,发现屏幕突然多了一条竖线,从最上面到最下面 准备约维修了,但希望还是能在网上收到一些支持,避免线下跑去维修,路途遥远也比较耗费精力 请教一下大家是否有遇到过呢,如何解决
-
如题,想要定时向 zoom 房间推流视频,有会员,房间一直开着想要实现自动视频推流, 用 Linux 服务器部署srs 之类的软件按理说能实现,但是在 zoom 设置里只找到了把 zoom 推流到 YouTube 等平台,不知道 zoom 房间有办法接入推流吗? 感谢,希望有大佬解答
-
小程序里的 这种我能想到是在 img 上画 div 或者 map->area 标签,然后写入对应的英文。 通过 api 转成语音。(或识别文字) 但就说画 div 这一步,几百本书。。每页的图位置都不一样。这也太苦力了吧? ![1726066284827.png]( https://f.pz.al/pzal/2024/09/11/235ff76edfc7b.png)
-
Zgo 补货,高中低价位机子都有,任君选择 这小一个月比较稳定,希望后续一直稳下去,稳定性方面可以看我的探针: https://n.990599.xyz/ ===============9929&CMIN2 线路机型============= Los Angeles AMD VPS - Specials - Starter 1C/ 2G/ 30G SSD/ 1T/ 300mbps 1 Core AMD EPYC 7003 Series 2 GB DDR4 RAM 30G NVMe SSD 1 IPV4 & /127 IPV6 1T/Month/300Mbps, Fair Use Los Angeles, China Optimised, 9929&CMIN2 ✅含 aff 直达链接,9929&CMIN2 线路 $36 ================9929&CMIN2 线路机型============= Los Angeles AMD VPS - Specials - Standard 2C/ 3G/ 50G SSD/ 2T/ 300mbps 2 Cores AMD EPYC 7003 Series 3 GB DDR4 RAM 50G NVMe SSD 1 IPV4 & /127IPV6 2T/Month/300Mbps, Fair Use Los Angeles, China Optimised, 9929&CMIN2 ✅含 aff 直达链接,9929&CMIN2 线路 $66 =================国际线路落地解锁王=============== Los Angeles Global VPS - Specials - Starter 1C/1G/20G/2T@1000Mbps 1 Core AMD EPYC 7002 Series 1 GB DDR4 RAM 20G NVMe SSD 1 IPV4 & /127 IPV6 2T/Month/1Gbps International network, not optimized for China 无国内优化线路,适合落地 ✅性价比第二的落地鸡,含 aff 直达链接,Starter 年度付款$15(缺货) =================国际线路落地解锁王=============== Los Angeles Global VPS - Specials - Standard 2C/2G/40G/4T@1000Mbps 2 Cores AMD EPYC 7002 Series 2 GB DDR4 RAM 40G NVMe SSD 1 IPV4 & /127 IPV6 4T/Month/1Gbps International network, not optimized for China 无国内优化线路,适合落地 ✅性价比第三的落地鸡,含 aff 直达链接,Standard 年度付款$25 ===============CMIN2 线路机型=============== Los Angeles AMD Performance VPS - Specials - Lite 1C/1G/20G/600G@0.5Gbps 1 Core AMD EPYC 7003 Series 1 GB DDR4 RAM 20G NVMe SSD 1 IPV4 600G/Month/500Mbps, Fair Use Los Angeles, China Optimised, CMIN2 ✅含 aff 直达链接,CMIN2 线路 $35 =================CMIN2 线路机型================= Los Angeles AMD Performance VPS - Specials - Starter 1C/2G/30G/1000G@1Gbps 1 Core AMD EPYC 7003 Series 2 GB DDR4 RAM 30G NVMe SSD 1 IPV4 1T/Month/1Gbps, Fair Use Los Angeles, China Optimised, CMIN2 ✅含 aff 直达链接 CMIN2 线路 $52 :xhj003: AMD EPYC 7003 洛杉矶原生 IP NVMeSSD 国际网络高性能 VDS 可以选 Windows ======高性能 VDS $88 4C/8G/150G/20T@1Gbps====== Los Angeles AMD VDS - Specials - Standard 4 Cores AMD EPYC 7003 Series 8 GB DDR4 RAM 150G NVMe SSD 1 IPV4 & /127 IPV6 International network, 20T/Month/1Gbps, Fair Use Allows installation of Windows with your own license 1 Backup Slot ✅Standard 季度付款$27 ✅Standard 年度付款$88 ,有 aff 直达链接 =======高性能 VDS $166 8C/16G/250G/20T@2Gbps====== Los Angeles AMD VDS - Specials - Pro 8 Cores AMD EPYC 7003 Series 16 GB DDR4 RAM 250G NVMe SSD 1 IPV4 & /127 IPV6 International network, 20T/Month/2Gbps, Fair Use Allows installation of Windows with your own license 1 Backup Slot ✅Pro 季度付款$52 ,有 aff 直达链接 ✅Pro 年度付款$166 ,有 aff 直达链接 ======高性能 VDS $258 12C/24G/500G/20T@2Gbps====== Los Angeles AMD VDS - Specials - Premium 12 Cores AMD EPYC 7003 Series 24 GB DDR4 RAM 500G NVMe SSD 1 IPV4 & /127 IPV6 International network, 20T/Month/2Gbps, Fair Use Allows installation of Windows with your own license 1 Backup Slot ✅Premium 季度付款$76 ,有 aff 直达链接 ✅Premium 年度付款$258 ,有 aff 直达链接 =============================================== VDS 的 CPU 资源随便拉满也不会被停机,独立 CPU 可以 100%长时间占用! zgo 测评可以参考: https://990599.xyz/zgocloud/ VDS 的 test IP:154.23.243.7 VDS 的解锁测试,全绿 IP 质量测试,25 端口可以工单开启 三网回程测试,国际线路,对国内无优化,网络无抖动 融合怪脚本测试 yabs 脚本测试 zgo 洛杉矶解锁基本全绿(除了 instagram 版权音乐) zgo 测评和线路质量可以参考: https://990599.xyz/zgocloud 注意 zgocloud 开启防欺诈,请下单的环境: ⚡1 、下单前请清空缓存和 cookie ; ⚡2 、清空代理,不开启魔法,使用真实上网环境; ⚡3 、如果遇到无法支付,系统砍单的情况,可以提交工单给客服,让客服重新打开 invoice 后再付款