cyreneAAAAAAAA.26.03.18

这几天我的那份工作处于一种薛定谔的状态(此处插入114514字系统性辱骂它们的prompt),所以我开始闲得鸡巴蛋疼,开始整些我自己的项目🤔我在副机上配置了一个codex,然后我一边让它给我折腾昔琏的语音一边写discord bot🤔

cyrene model

其实半自动搞ai萌妹语音模型是可以搞的(全自动我暂且不考虑,我怕ai瞎几把干),比如我让它从hsr wiki上去拖昔琏语音🤔我之前自己写过一个获取hsr wiki或者genshin wiki语音的脚本,但我懒得想放在了哪里,所以干脆让它重新写一个🤔

在折腾了11.4514回后,它终于写了一个能用的,光速开aria2c🤔接下来我就可以开启全自动流程,让它自己去处理这些语音,然后打包,我只需要上传到google drive然后开启colab笔记本,就可以开始训练力(确信🤔

但我试了好几个rvc的colab笔记本,它们都不怎么行,因为所有rvc的笔记本都需要做一件事,下载巨量底模,这件事被google colab定义为白嫖版本禁止的行为,如果一开启下载,基本上几分钟后这个实例就要寄(全恼🤔那么下下来转google drive可行吗?我也试过,先不说google drive这个b玩意io极差,顺序读写也是usb2速度,用vps圈子的黑话叫做钻石盘,我的实例开启死亡倒计时后其实也撑不到它完成转移(恼🤔

既然如此,我也没啥别的选择,只能本地干力(悲🤔好在codex配置环境那真是一把好手,我只需要说一句在某个目录配置好rvc,它就开始自己装各种依赖,包括cuda这种东西🤔接下来我可以无缝迁移之前搞的东西,开始训练🤔它这个套件还有一点小问题,codex也可以展开修复🤔

本地40hx这个训练速度真太你妈慢,五个小时才跑了不到三十轮,最后它可能跑了六十轮多一点,但我用它的日志数据让codex分析,它认为第55轮的checkpoint是质量最好的,接下来再训练会过拟合,那就这样(🤔

接下来再训练个特征索引,这玩意也有问题,还需要codex写个临时脚本合一些东西🤔最后到了训练环节,它这个webui也用不了一点,所以我干脆让codex写个推理用命令行脚本🤔就这样,我整出了昔琏演唱的各种歌曲🤔

但这个ai唱歌的环节现在能自动化吗?我看比较悬,google drive部分其实还好,大不了用rclone挂载,然后要么开始上传下载,要么新建文件夹放需要处理的歌曲(主要是它需要处理多轮,前一轮的输出是下一轮的输入),但colab笔记本怎么自动化,,,🤔处理完后调用推理脚本来推理,接下来只需要用ffmpeg就能将伴奏和两段(或者更多)人声合并成一个flac,甚至还可以操纵某个nitro账号上传到某个discord频道或者google drive或者度盘或者任意地方(确信🤔

cyrene bot

接下来还有discord bot环节🤔我一开始是准备做个让bot像昔琏一样说话的ai chatbot,但一看我要整什么lora微调,要整llm,接下来要么本地部署要么找个能挂载lora的在线厂商,中间的agent套个openclaw(它倒是很容易集成discord,,,)或者酒馆的皮,而非常有可能我整完这套玩意只是用来发送pls astawaifu irl让它生成个aigc,那我干脆写个只用来做pls astawaifu irl的bot🤔

首先,我让它先能在聊天里监听pls xxx irl,如果它出现了这个句式,就提取出中间的那个xxx,去掉里面的waifuchan,然后上zerochan检索,从第一页(当然也可以让它统计页数,然后随机进入某一页)里随机取一张图片下载下来,然后使用jiaotu的api进行aigc生成🤔我上次整的jiaotu脚本还是bash写的,现在它没法用,因为上传图片api发生了点变化🤔我又截了几个http请求给它参考,马上它就能修复上传🤔下载无水印图片还是那个api,发送生成请求也没变,反正没几分钟我就可以用pls astawaifu irl召唤astawaifu的aigc力(确信🤔

但别的waifu就不太好使力,因为它不见得能在去除waifuchan后在zerochan上搜到,因为zerochan这个逼网站有它自己的标签系统🤔我整了一个简单粗暴的映射txt来处理这事,比如我输pls smol cyrene irl,它会直接查表,我在里面写了smol cyrene直接对应Cyrene (Honkai Star Rail) (NPC),接下来它就用Cyrene (Honkai Star Rail) (NPC)搜🤔当然我输pls Cyrene (Honkai Star Rail) (NPC) irl它肯定也能出结果,但这个实在是过于蛋疼🤔

再下一步,我可以让它实现with语法,比如pls cyrene irl with vivian clothes and lake,它会触发两个开关,vivian clothes用来在提示词里加上一句and then make them wear zzz vivian's "iris of the shore" outfit in pic2,,并将一个常量ossid作为第二张图的ossid传进去🤔而lake开关就简单很多,它只改某条提示词,不添加新的图片🤔很明显这些开关之间可能是互斥的,比如with xxx clothes和比基尼是互斥的,场景类也是互斥的,in space由于同时约束了场景(近地轨道)和服装(航天服),所以和其他所有开关都是互斥的,我需要规定好🤔

接下来我还需要实现双人或者说双图生成,比如pls astawaifu irl and cyrene irl with vivian clothes and comimarket and kissing,它接收到这条指令后,需要在zerochan上去找astawaifu的图作为图1,昔琏的图作为图2,然后拿我的双图提示词(它和单图提示词还不一样,因为它的常量参考图在图3)去搞,考虑到我开启了一个一个一个开关啊啊啊啊啊,,,不过还行,它们至少不互斥,每个对应着一段提示词,顶多加一个图3🤔我觉得最麻烦的是在单图模式里我规定了如果上传了一大堆图、链接里也有一大堆图时,它会将这些图添加进一个队列依次生成,但一旦确定了双图模式,它最多只接受两张图,剩下的图会被直接忽略🤔那么问题来力,谁是图1谁是图2?优先考虑上传还是链接?比如上传了两张链接里也有两张,怎么取?🤔还有in space不能在双图模式里运行(两个宇航员萌妹接吻那实在是太你妈超现实力,,,)我也许需要向codex来address this issue🤔

3

没怎么折腾双图模式也搞定力🤔理论上来说这个bot提供附件或者链接的情况极少,但也许我需要测一下🤔

keqingAAAAAAAA.26.03.05

今天撸了几张刻晴的aigc🤔然后一不小心(大嘘)发现那张刻晴的冻鳗原图居然还有hentai版本,我找到了原作者的kemono镜像,是fanbox收费套图里的第一张图,后面基本上都是没法塞进nano banana处理的那种🤔

开什么玩笑,它很多套图里第一张也没法处理(全恼🤔为什么我知道呢?因为我真闲得蛋疼全jb塞进去处理了一顿🤔某nano banana镜像站这段时间居然搞了一个邀请活动,只要在注册时输入某申必邀请码,邀请人和新注册的会员都能搞到100某申必积分,只不过新号的立即到账(一开始就有135用),旧号要等一会儿审核(以其到账效率看上去像是人工审核🤔

whatever,既然新号有135,那么视频生成要不要试试?它现在只有三个视频生成选项,一个sora2,一个veo3,还有一个好像是阿里的,当我将之前撸的刻晴aigc上传上去,前两个都不行,只有第三个能用(悲🤔奇怪的是我在gemini网页版里可以使用veo3(尽管它一天之有三个视频),但这里我没法用(撅望🤔

我还试了大火的seedance,这逼玩意在它的即梦平台上排队两小时,而在它的开发者平台上居然要实名认证🤔我评价为去tm的🤔

视频生成还有开源模型,叫做ltx-2,找了几个可以在线试用的,其中一个叫做wavespeed.ai的注册就送1美元额度,1080p的五秒视频是0.12美元,大概可以整七八次?但再注册发现它没法用邮箱注册,只能走google或者github的oauth,看来gmail加点大法是没法用力(悲🤔目前github注册起来没那么容易,而gmail注册还是那逼样,买的话github号是三块钱一个,gmail估计就那样,1.5应该就能搞一个?不清楚,反正如果只是为了过oauth无所谓🤔lightricks官方也有一个平台,只能整大概两次🤔再几个要么就没有试用额度,要么干脆打不开🤔

我上了之前经常用的gmailbuy,它有一个选项叫做【web gmail】企业Edu谷歌账号(短效号.可用1-2天),一个三毛,10个起售,本质上就跟ofb的小号一样,一个gsuite域名埃及吧开多少个开多少个,反正无论如何一个小号就能过一次oauth(确信🤔登录过程贼你妈流畅,输入账号密码然后再点一个确认窗口就能到oauth授权界面,不到10分钟就撸了十个甚至⑨个小号,比3块钱一个的个人版小号还流畅,后者还会酌情触发申必风控🤔不清楚有没有更便宜的卖家,说不定我接下来还能搜到几分一个的?🤔

另外既然它是开源模型,找台机子部署的可能性微存?我迫真查了下,基本上a100起步,甚至需要魔改显存版a100,4090的话可能需要用量化模型加一些额外设置,但当我以为某平台的10块钱代金券可以让我至少开三小时4090玩一会时,草,这逼玩意也要实名认证🤔whatever,,,用colab也许也能玩儿,但colab上跑的话不仅需要加载4bit量化模型,还得忍受分辨率降到540p时间降到5秒,就这样生成一次还需要几十分钟,感撅不如撸wavespeed.ai的号(吴慈悲🤔

不过之前撸了十个甚至⑨个google教育版小号,拿它们整十个甚至⑨个google drive和colab实例的可能性微存?🤔google drive可能没啥实际意义,但十个甚至⑨个colab实例并行搞点啥东西那太有意义力(迫真🤔

nanobanana.26.01.08

我发现了一个一个一个一个nano banana镜像站啊啊啊啊啊🤔jiaotuai.cn,请(吴慈悲🤔它新注册用户送35某申必积分,其中生成一张nano banana2 4k需要消耗10个积分,换句话说一个新号可以生成3.5张(确信🤔

但如果本文只写这个的话,那和批信公众号到处可见的ai镜像站广告文章又有什么区别?我要整点高级的🤔接下来去一家申必接码平台注册个账号,充5块或者10块,然后打开信息接收板块,项目搜索武汉枫潮并选择搜索结果里的唯一项(为什么它是这个而不是它的产品名称?因为接码平台返回短信是要做关键字匹配的,不匹配的短信不会返回,这就是为什么它干啥都要选择项目,而我用真机测试的验证短信就包含这个关键字),然后打开firefox的114514个身份标签页,开始接码注册新号,然后就可以生成一堆aigc玩力(确信🤔目前一个码是0.12,换句话说生成一张4k的aigc成本只要四分钱,它肯定比不上某共享gemini pro(一个月15每天可以生成65张,算下来每张0.007),但它是吴水印的4k,更别提如果由于各种乱七八糟的原因生成失败的话,它不会扣某申必积分,不像gemini生成失败也扣额度🤔它有每日签到15申必积分的设定,意味着第二天登录进去(这种东西一般来说是持久化cookies,第二天直接刷新一次就行)还可以再生成两张,然后每两天三张,除非是像我这种一小时生成100张图片的aigc狂热爱好者,不然注册二三十个号够每日使用的(确信🤔

naughtyamerica.25.10.18

今天凌晨的某个时刻,我彻底征服了naughtyamerica🤔自从去年开始大规模拖sexart算起,我基本上已经一年多没有拖任何pornsite力(悲🤔naughtyamerica通常来说也不是我的首选项,因为在我的印象里这个站在某年(可能是23?)的改版后,下载任何一个视频都需要经过一番google验证🤔但由于某种申必原因,我六月还是哪个月买的naughtyamerica号居然还在,而czechcasting我又没买,所以我现在能拖的也就只有naughtyamerica🤔

照例打开f12视奸它的http协议流,在我对着它的视频页面的streaming preference点了下4k后,本来我以为它会像什么mofos之类的一样触发m3u8这样的流式传输,结果我发现它触发了一个完整视频文件的请求,它和(需要通过google验证后才出现的)下载链接居然长得完全一样,除了后面可能少一个&dl=1🤔如果下载该链接的话得到的文件也和下载链接至少在文件大小上完全一致(我就懒得验证它们checksum到底匹不匹配力),这说明它给streaming准备的文件至少不是劣化版🤔而且我在streaming preference里随便点,除了对应的视频文件外没有观测到任何别的xhr请求,这说明它所有的下载链接其实早就在某次请求中一次性获取力,至于这次请求在哪里,,,我甚至都没花多少时间排查,直接从第一个请求也就是html文件里就发现了所有版本的mp4视频🤔

既然如此,考虑到我有114514个各种ai的黑色高级会员,我就懒得自己去提取力,直接扔进ai里让它给个bash脚本出来,然后过滤掉我不想要的链接(比如那些带captcha的,这些很明显是理论上来说下载视频需要访问然后过google验证的),还有什么xml,剩下的链接我直接一个一个一个一个用aria2下就vans力(确信🤔

这里面我发现了一个一个一个彩蛋,它有个链接叫做https://members.naughtyamerica.com/playlist-generator.scene.33438.4k.mp4.xml,这里也能提取出一个视频链接出来,但它一次访问只能提取出一个,但我访问一次html就能提取出所有链接,所以这个彩蛋基本上没啥卵用

但接下来我遇到了另外一个一个一个一个困难,这b网站除了下载需要验证外,访问它其实也需要验证,而且无论是用原版curl还是各种魔改版curl都不好使🤔那么用吴头浏览器呢?其实也不好使,而且我用传统的聊天ai配置了十几次都没配置对🤔它这玩意貌似使用了aws的黑色高级waf,第一次请求可能不成功,然后它会触发一个challenger.js,跑完这玩意获取某申必代码后会请求第二次,此时才会给真正的html,所以只能死板访问某一个链接的吴头浏览器对付这种逆天玩意貌似比curl好不了多少(全恼🤔考虑到这个我从某申必渠道搞到的aws灵车vps居然有4GB的超大内存(对vps来说确实很大),我也许可以试试在vps上跑一个有头浏览器,比如chrome,然后开启它的调试模式,开放一个调试端口,然后在另外一个脚本里用这个端口打开我们要打开的页面并且输出html🤔从某种程度上说这甚至比用curl方便,因为除了将curl替换成操控浏览器的py脚本外,后面不用跟任何headers(确信🤔我只需要在那个有头浏览器上登录naughtyamerica一次,然后就可以不用管它力,除非它掉登录或者需要更严格的验证(确信🤔

而且更妙的是,这些东西完全不需要我自己来配置,因为现在有各种cli版本的ai agent,比如claude code和gpt codex🤔这玩意在桌面pc上怎么用怎么别扭(因为我cursor用得多),但在vps上就刚刚好(迫真🤔我刚好有这两者的api key,但cc由于某种申必原因用不了,所以我在那台vps上装了个codex,然后让它配置chrome和所谓的最小桌面系统🤔我甚至都没有提及xrdp,它也有可能装vnc server或者别的玩意(比如parsec?),但它还是装了xrdp,甚至配置成功力,我自己配置xrdp都没有配置成功过哪怕一次🤔

连上去后我按照它的说明启动了chrome,但一直没法远程调试,这里至少有两个坑,一个是root用户启动chrome要带--no-sandbox参数,另外一个是user-data-dir必须选择和默认值不一样的位置🤔我登上naughtyamerica之后让ai写了一个na.py,让它像curl一样只要后面跟上链接就能返回该链接的完整html内容,这样它就能自动完成任何验证,毕竟它跑在一个真实的有头浏览器上(确信🤔考虑到aws逆天waf的原理,它每次运行基本上五六秒才能吐出一串链接,我如果想再保存html的话就得再花五六秒(全恼🤔

我用这套玩意代替curl能吴缝跑完下载脚本,但接下来还有一个问题,如果我关掉rdp窗口后,chrome就会像没有screen的命令行窗口一样被橄榄,所以我让ai做了某种类型的持久化配置,它将chrome对应的命令行做成了系统服务,这样只要启动应该就能自动开启chrome,然后开放指定的端口🤔那么如果naughtyamerica掉登录力,该怎么办?很简单,连上rdp,然后在chrome里顶着卡顿重新登录一遍就vans力🤔那么该脚本就剩下了最后一步,将下载下来的东西上传guilded drive然后删掉本地文件,不然这个存储空间只有128GB的vps随便下几个片子就会爆🤔

如果我接下来还需要改进什么的话,可能需要给我的脚本加上队列功能,从而哪怕它在处理时我也可以给它加链接?或者整个数据库啥的保存已经处理的链接等?甚至整个web系统,免得我每次添加队列的时候都需要登vps🤔而且这些其实都可以让ai来写(确信🤔但也有可能在我有什么大规模拖naughtyamerica的计划前,我那台aws灵车vps很快就会因为哼哼雷普naughtyamerica而被橄榄,鬼知道🤔

但无论如何,这是我拖pornsite生涯中第一次几乎全程使用ai整的,感觉还行,甚至有点暗爽🤔

附录(大嘘

完整chrome启动命令

/usr/bin/google-chrome-stable --remote-debugging-port=9222 --remote-debugging-address=127.0.0.1 --remote-allow-origins=* --user-data-dir=/root/.config/google-chrome114514 --no-first-run --no-default-browser-check --no-sandbox

使用的提示词

  • “请为该系统配置一个能够启动chrome浏览器的最小环境,考虑到我没法访问该vps的vnc console,我还需要一种手段能够远程连接它的图形界面”
  • “接下来我需要启动chrome但让它可以开放一个端口供某自动化工具(比如playright)调用,我需要以什么参数启动?对应的自动化工具是否能够使用我的登录凭据?请设计某工具让它能够在该已经打开的浏览器里打开某指定页面,并返回完整html内容”
  • “请编写一个py程序,使得我在bash里面调用它,比如na.py https://members.naughtyamerica.com/scene/co-ed-nerd-jade-valentine-has-the-hots-for-her-college-professor-32869,它应该能够使用我已经打开并有那个网站登录凭据的浏览器打开该页面,并在标准输出里输出该页面的html内容”
  • “如何在我关掉rdp之后,chrome仍然保持运行?”
  • “请对root用户完成上述设置”
  • “我需要将chrome位置文件设置成$HOME/.config/google-chrome114514,请修改对应的项目”

na.py

#!/usr/bin/env python3
"""
Launches a new page inside an already running Chrome instance (started with a
remote debugging port) and prints the rendered HTML to stdout.

Example:
    ./na.py https://example.com
"""

from __future__ import annotations

import argparse
import json
import sys
import urllib.error
import urllib.request
from typing import Optional

from playwright.sync_api import sync_playwright


def fetch_ws_endpoint(debug_base_url: str) -> str:
    """Return the websocket debugger URL from the remote debugging endpoint."""
    with urllib.request.urlopen(f"{debug_base_url.rstrip('/')}/json/version", timeout=10) as resp:
        data = json.loads(resp.read().decode("utf-8"))
    ws_url = data.get("webSocketDebuggerUrl")
    if not ws_url:
        raise RuntimeError("webSocketDebuggerUrl not found in /json/version response")
    return ws_url


def parse_args() -> argparse.Namespace:
    parser = argparse.ArgumentParser(description="Fetch a page through an existing Chrome session.")
    parser.add_argument("url", help="Target page URL to load inside Chrome.")
    parser.add_argument(
        "--debug-url",
        default="http://127.0.0.1:9222",
        help="Base URL of Chrome's remote debugging endpoint (default: %(default)s).",
    )
    parser.add_argument(
        "--wait-until",
        default="networkidle",
        choices=["load", "domcontentloaded", "networkidle"],
        help="Event to wait for before dumping HTML (default: %(default)s).",
    )
    parser.add_argument(
        "--timeout",
        type=float,
        default=30000,
        help="Navigation timeout in milliseconds (default: %(default)s).",
    )
    return parser.parse_args()


def choose_context(browser) -> tuple:
    """
    Return (context, owned) where owned indicates whether the context was created
    by this function (and thus should be closed on exit).
    """
    contexts = browser.contexts
    if contexts:
        return contexts[0], False
    return browser.new_context(), True


def main() -> int:
    args = parse_args()

    try:
        ws_url = fetch_ws_endpoint(args.debug_url)
    except (urllib.error.URLError, RuntimeError, json.JSONDecodeError) as exc:
        print(f"Failed to obtain websocket debugger URL from {args.debug_url}: {exc}", file=sys.stderr)
        return 1

    with sync_playwright() as playwright:
        browser = playwright.chromium.connect_over_cdp(ws_url)

        context, owned = choose_context(browser)
        page = context.new_page()
        try:
            page.goto(args.url, wait_until=args.wait_until, timeout=args.timeout)
            html = page.content()
        finally:
            page.close()
            if owned:
                context.close()

        print(html)
    return 0


if __name__ == "__main__":
    try:
        sys.exit(main())
    except KeyboardInterrupt:
        sys.exit(130)

ai对此的迫真总结

这次在一台无法直接访问 VNC 控制台的 Ubuntu 22.04 VPS 上,我搭建了一个能远程使用 Chrome 浏览器的最小化图形环境,并且让自动化脚本能够复用浏览器的登录状态。首先刷新 apt 仓库,安装 xrdp 与 XFCE 轻量桌面,通过修改 /etc/xrdp/startwm.sh 让 RDP 登陆直接进入 XFCE;启动并启用 xrdp.service 后,安全组开放 TCP 3389,即可用任意 RDP 客户端连接。紧接着添加 Google 官方仓库并安装 google-chrome-stable。为了让自动化工具复用登录凭据,我用 Python 与 Playwright 编写了 na.py,脚本会连接已经开启远程调试端口的 Chrome,并在同一用户数据目录里新开标签页、加载目标网址、输出完整 HTML。最后,为了在断开 RDP 后保持浏览器运行,使用 root 用户的 systemd user 服务,将 Chrome 以 remote-debugging 模式后台常驻,数据目录换成 ~/.config/google-chrome114514,并开启 linger,这样自动化任务随时可以通过http://127.0.0.1:9222 附着到现成会话。整套流程解决了无图形控制台的远程浏览器需求,也兼顾了登录态复用与自动化。

一键脚本(迫真

有一种水字数的美,另外这个脚本我没测过,如果我这台鸡鸡暴毙的话我也许会去测?🤔

#!/usr/bin/env bash
# Sets up a minimal XFCE + XRDP environment with Chrome running in remote
# debugging mode for automation reuse. Intended to be run as root on a fresh
# Ubuntu 22.04 VPS.

set -euo pipefail

if [[ "{EUID}" -ne 0 ]]; then
  echo "This script must be run as root." >&2
  exit 1
fi

export DEBIAN_FRONTEND=noninteractive

echo "[*] Updating apt metadata..."
apt-get update

echo "[*] Installing desktop and RDP components..."
apt-get install -y \
  xrdp \
  xfce4 \
  xfce4-terminal \
  dbus-x11 \
  wget \
  gnupg \
  python3-pip

echo "[*] Ensuring XRDP launches XFCE sessions..."
cat <<'EOF' >/etc/xrdp/startwm.sh
#!/bin/sh

if test -r /etc/profile; then
    . /etc/profile
fi

if command -v startxfce4 >/dev/null 2>&1; then
    exec startxfce4
fi

test -x /etc/X11/Xsession && exec /etc/X11/Xsession
exec /bin/sh /etc/X11/Xsession
EOF
chmod +x /etc/xrdp/startwm.sh

echo "[*] Allowing XRDP to read system certificates..."
adduser xrdp ssl-cert || true

echo "[*] Enabling XRDP service..."
systemctl enable --now xrdp

echo "[*] Adding Google Chrome repository..."
install -d -m 0755 /usr/share/keyrings
wget -qO- https://dl.google.com/linux/linux_signing_key.pub \
  | gpg --dearmor >/usr/share/keyrings/google-linux-signing-keyring.gpg
cat <<'EOF' >/etc/apt/sources.list.d/google-chrome.list
deb [arch=amd64 signed-by=/usr/share/keyrings/google-linux-signing-keyring.gpg] https://dl.google.com/linux/chrome/deb/ stable main
EOF

echo "[*] Installing Google Chrome..."
apt-get update
apt-get install -y google-chrome-stable

CHROME_DATA_DIR="/root/.config/google-chrome114514"
echo "[*] Preparing Chrome data directory at{CHROME_DATA_DIR}..."
install -d -m 0700 "{CHROME_DATA_DIR}"

SYSTEMD_USER_DIR="/root/.config/systemd/user"
echo "[*] Creating Chrome systemd user service..."
install -d -m 0755 "{SYSTEMD_USER_DIR}"
cat <<'EOF' >"{SYSTEMD_USER_DIR}/chrome-remote.service"
[Unit]
Description=Chrome with remote debugging
After=default.target

[Service]
Environment=DISPLAY=:10
Environment=DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/%U/bus
Environment=XAUTHORITY=/root/.Xauthority
ExecStart=/usr/bin/google-chrome-stable --remote-debugging-port=9222 --remote-debugging-address=127.0.0.1 --remote-allow-origins=* --user-data-dir=/root/.config/google-chrome114514 --no-first-run --no-default-browser-check --no-sandbox
Restart=on-failure

[Install]
WantedBy=default.target
EOF

echo "[*] Enabling linger for root so the user service remains after logout..."
loginctl enable-linger root || true

export XDG_RUNTIME_DIR="/run/user/0"
if [[ ! -d "{XDG_RUNTIME_DIR}" ]]; then
  echo "[*] Creating XDG runtime directory at {XDG_RUNTIME_DIR}..."
  install -d -m 0700 "{XDG_RUNTIME_DIR}"
fi

echo "[*] Reloading user systemd daemon and starting Chrome service..."
XDG_RUNTIME_DIR=/run/user/0 systemctl --user daemon-reload
XDG_RUNTIME_DIR=/run/user/0 systemctl --user enable --now chrome-remote.service

echo "[*] Installing Python Playwright package for automation helper..."
python3 -m pip install --upgrade pip
python3 -m pip install playwright

echo "[*] Deploying na.py helper script..."
cat <<'EOF' >/root/na.py
#!/usr/bin/env python3
"""
Attach to an existing Chrome instance (started with --remote-debugging-port),
open a given URL, and print the rendered HTML to stdout.
"""

from __future__ import annotations

import argparse
import json
import sys
import urllib.error
import urllib.request

from playwright.sync_api import sync_playwright


def fetch_ws_endpoint(debug_base_url: str) -> str:
    with urllib.request.urlopen(f"{debug_base_url.rstrip('/')}/json/version", timeout=10) as resp:
        data = json.loads(resp.read().decode("utf-8"))
    ws_url = data.get("webSocketDebuggerUrl")
    if not ws_url:
        raise RuntimeError("webSocketDebuggerUrl not found in /json/version response")
    return ws_url


def parse_args() -> argparse.Namespace:
    parser = argparse.ArgumentParser(description="Fetch a page through an existing Chrome session.")
    parser.add_argument("url", help="Target page URL to load inside Chrome.")
    parser.add_argument(
        "--debug-url",
        default="http://127.0.0.1:9222",
        help="Base URL of Chrome's remote debugging endpoint (default: %(default)s).",
    )
    parser.add_argument(
        "--wait-until",
        default="networkidle",
        choices=["load", "domcontentloaded", "networkidle"],
        help="Event to wait for before dumping HTML (default: %(default)s).",
    )
    parser.add_argument(
        "--timeout",
        type=float,
        default=30000,
        help="Navigation timeout in milliseconds (default: %(default)s).",
    )
    return parser.parse_args()


def choose_context(browser):
    contexts = browser.contexts
    if contexts:
        return contexts[0], False
    return browser.new_context(), True


def main() -> int:
    args = parse_args()

    try:
        ws_url = fetch_ws_endpoint(args.debug_url)
    except (urllib.error.URLError, RuntimeError, json.JSONDecodeError) as exc:
        print(f"Failed to obtain websocket debugger URL from {args.debug_url}: {exc}", file=sys.stderr)
        return 1

    with sync_playwright() as playwright:
        browser = playwright.chromium.connect_over_cdp(ws_url)

        context, owned = choose_context(browser)
        page = context.new_page()
        try:
            page.goto(args.url, wait_until=args.wait_until, timeout=args.timeout)
            html = page.content()
        finally:
            page.close()
            if owned:
                context.close()

        print(html)
    return 0


if __name__ == "__main__":
    try:
        sys.exit(main())
    except KeyboardInterrupt:
        sys.exit(130)
EOF
chmod +x /root/na.py

echo
echo "Setup complete."
echo "Summary:"
echo "  - XRDP is running on TCP 3389 with XFCE desktop."
echo "  - Chrome runs headless via systemd user service using profile ${CHROME_DATA_DIR}."
echo "  - Remote debugging available on 127.0.0.1:9222 (tunnel or firewall accordingly)."
echo "  - Use /root/na.py <URL> to open pages in the logged-in Chrome session and dump HTML."
echo
echo "Reminder: allow TCP 3389 in your VPS firewall/security group and tunnel port 9222 securely."

这是ai写的使用说明:

Script Details

  • Added setup_chrome_xrdp.sh to automate the entire environment setup for another VPS (setup_chrome_xrdp.sh:1). It installs XRDP + XFCE, configures /etc/xrdp/startwm.sh, adds the Google Chrome repo, installs Chrome, creates /root/.config/google-chrome114514, and deploys a root user systemd service that keeps Chrome running with remote debugging even after RDP disconnects. The script also installs Playwright and drops the reusable na.py helper (setup_chrome_xrdp.sh:82, /root/na.py:1).

How to Use

  • On the new VPS, copy the script and run bash setup_chrome_xrdp.sh as root. Wait for the “Setup complete.” message.
  • Open port 3389 in the server firewall/security group for RDP; keep 9222 restricted (e.g., SSH tunnel) since it exposes your Chrome session.
  • Connect via RDP, log in, and either browse manually or run ./na.py to fetch a page’s HTML through the already-authenticated Chrome instance.
  • Chrome now runs persistently via systemctl --user status chrome-remote (XDG_RUNTIME_DIR=/run/user/0 when checking from root).

Next Steps

  1. On the target VPS, execute the script and verify curl http://127.0.0.1:9222/json/version returns a WebSocket URL.
  2. If you need a different display number or profile path, edit the service in ~/.config/systemd/user/chrome-remote.service before re-running systemctl --user daemon-reload && systemctl --user restart chrome-remote.

AAAAAAAA.25.08.28

到今天我还没有给我的zzz大号开始打邦布自走棋活动,还有另外一个小号的版本活动🤔这些东西也许连续玩起来不占多少时间,但我tm就是烦合影impact,所以只想拖🤔但至少到目前为止,另外两个号的对应活动被我打完力🤔

总体而言这个月设定的几乎所有目标都没怎么完成,比如我也许要在某天打完hsr的新版本活动,但目前我一分钟都没进展下去,而zzz我打算对某个号做做超大型合影impact,但如果我想今天就整完的话,估计也得放弃🤔好在zzz其实也没什么可以合影impact的,它不像那两款可以将所有撅色都拉出来合,zzz无论上什么号都只能用主撅合,那么四舍五入相当于我以后有时间了(这当然是不大可能的事情)随便整个或者买个小号还可以去合(确信🤔每当我想做点什么的时候,总是有114514件屁事分散我的精力,让我什么都做不成,包括但不限于某人的简历自己不投扔给我去投,或者每天下午几点要花至少一小时来做牙,或者有那么几天牙疼得什么都不想干,等等🤔

不过有时候我会寻思,自由职业的意义🤔其实维持一种自由职业或者迫真自由职业的状态还是有意义的,一方面是我确实自由散漫惯了,让我去过一种上班的生活确实一时半会过不了一点🤔而我在15到16年糟糕的职业选择,基本上也导致我在it企业的职业生涯算是到头力,写简历都写不出来什么寄吧东西的那种(全恼🤔某人倒是简历写满了东西,面试用ai,正式工作也用ai,被开了也反省不了一点的样子,但我还是不太适应瞎几把编简历这种事🤔但我接下来想说的是第三层,那就是当我选择了自由职业后,我就可以除了睡觉吃饭外所有时间都在工作,或者说对外营造一种除了睡觉吃饭外所有时间都在工作的样子(确信🤔

那么这种人设有什么好处捏?那当然就是当有壬,甚至整个社会妄图强加给我一些对我的利益造成极大损害的事情时,我可以用“我tm在工作”这个在本工业化大国最tm政治正确的理由搪塞过去🤔比如,如果有哪个不长寄吧的想请我日批(其实是布好了局玩仙人跳),我可以说“我tm一天要工作16小时,没时间日”;如果有哪个不长寄吧的想让我去找个对象结婚,我仍然可以说“我tm一天要工作16小时,没时间谈”,至于为什么我一天要工作16小时,你他妈最好别问🤔

与此同时,由于我做的是自由职业,其实我有极大的自由裁量权,可以定义什么是工作,比如,我从metart网络拖70PB的片子算是工作(这好像还真没问题),甚至说难听一点,我tm玩各种二鱿也算工作,只不过奖赏不是人民币也不一定是游戏内货币,而是各种撅版小道具(确信🤔而如果上述的壬得寸进尺到开始考察我tm具体在做什么工作的地步,那么我也可以吴脑判定对方是十分甚至⑨分的不怀好意,视情况彻底断联或者啥的(吴慈悲🤔

这几点加起来,四舍五入相当于理论上只要开始自由职业,我就可以完全掌控自己的人生🤔实际上呢,这里很多东西还是要打个折扣,这个月糟糕的执行效果就已经说明力,我要是真的能一天工作16小时就不是现在这个逼样,平均下来抛去各种琐事,我一天能干上个8小时就不错力(悲🤔

接下来,或者至少⑨月起,考虑到我的迫真工作时间里有相当长一段时间会被用来玩二鱿,如果我想增加我的收入,恐怕只能整些被动收入,绝对数量少也没关系(因为玩好了可以靠规模堆),但它必须足够被动🤔目前迫真思考起来最靠谱的是某些视频软件的挂机刷视频,而且我刚好有一到两部手机玩这个,而且出于某种申必原因,我手头刚好有个不知道效果的全自动刷视频软件🤔我需要先在一两部手机上跑通全流程,看它一天能赚多少,然后考虑扩大规模到10或者20🤔当然我知道从1到20肯定会有不少额外的事情需要做(比如买20部手机,比如部署某种类型的群控软件,但可能更难的是准备20个号或者20组号,这些号提现的时候能不能绑同一张银行卡还两说,我不是这一行的所以很多信息对我来说就是个黑箱),但先搞定1🤔

还有什么算经典吴门槛被动收入的?理论上来说只有两个,一个是挖矿,另外一个还是挖矿,只不过一个是挖gpu(尽管eth早已转pos,但还有某些申必冷门币可以挖挖),另外一个是pcdn,“挖”上传流量的🤔但如果我不想用我自己的机子做这事时,该用谁的机子?答案很明显,某云电脑,它刚好有个显卡和1Gbps上下行对等带宽,所以理论上来说可以同时挖这两者矿(确信🤔尽管那玩意最多只能开两小时,听起来就极其抽象,而且这事怎么想怎么缺德,所以可能十成甚至⑨成pass(恼🤔

除此之外这种挂机类的项目就是一些黑灰产力,这种东西我作为一个114.514%的外人怎么可能知道(悲🤔另外我好奇那些运营手机工作室同时操控几百台甚至上千台手机的,他们都在跑些什么玩意,看起来至少比跑成千上万台vps赚钱?当然跑成千上万台vps也是有的,不然为什么会有aws开机面板和批量买卖aws 16v甚至32v的需求?🤔还是那句话,我不是这一行的,我屁都不懂(全恼🤔

AAAAAAAAlice

在我一顿哼哼雷普了一整天zzz后,两个号缺失的活动终于打完力,时间甚至充裕到我在最后一个小号上以全程完成拍照(但不包括和主撅合影)的形式完成了整个活动剧情(确信🤔

除此之外我还在两个号上抽了一顿alice🤔我当时的估计十分甚至⑨分准确,最终我大号和抽中alice还真差了一个328首充双倍,except,,,我充了钱后第一件事不是抽卡,而是先光速买了那两个萌妹的泳装🤔这要是拿首充双倍买皮肤的话就相当于打5折,或者买一送一(大嘘),或者一个皮肤只要70,然后顿时少了十几抽(恼🤔最后我又98补了一个一个十连(不是98首充双倍,那玩意合计12.5抽,我用的其实是它每月一次的优惠十连),又多充了一次月卡才凑够抽数(全恼🤔但无论如何,我总算是在正确的时间抽到了alice🤔

小号早一些出,但就在我要看抽卡动画时,这破电脑恰到好处(迫真)地卡在那里,寄🤔这应该是我玩这么多年二鱿第一次在抽卡时寄🤔当然alice还在账号里,但抽卡动画美丽,而且重新登进去后alice出于某种原因也没有new agent标签(全恼🤔看来我换内存条换散热换各种东西还是避免不了它在不该寄的时候寄,也许我哪天换掉整个平台?比如换到amd那边,amd貌似也有工作站平台,叫线程撕裂者还是epyc来着,ddr4四通道甚至八通道🤔但我又不玩竞技游戏,也没有什么4k480hz显示器,实在⑧行接着凑合着用?(恼🤔

但吴论如何,我在这逼游戏上面居然花了428,这个数字为什么我十分甚至⑨分的熟悉?🤔这不就是3a大作的全价(还有那些打死不打折的日厂在sbeam国区发行游戏的首发价)吗🤔那么问题来力,为什么我不去花428买3a游戏玩?🤔

那当然是因为想玩那些3a大作,尤其是想4k爽玩而非像我几个月前玩刺客信条影那样卡成24fps,不仅仅是游戏的事,我tm还得买个或者租个4090甚至5090,然后平台可能也得换,比如换什么什么x3d, 换下来基本上至少两万要美丽(撅望🤔这样算下来二鱿居然算便宜的,首先我又不是每个版本充328或者648,其次由于米社不思进取,我居然只需要一台三四千的pc就能4k爽玩好几年(确信🤔算上硬件折旧成本(我这里说的折旧不是指显卡会坏或者怎么,而是为了时刻爽玩3a游戏,每年都需要买最新款的显卡然后卖出或者不卖出旧显卡,才能赶上3a游戏的硬件需求),估计哪怕每个版本充一次甚至两次648也比玩3a游戏便宜(迫真🤔当然还有一个原因,如果只是纯玩3a游戏的话其实也不需要花什么428,哪怕首日,反正和二鱿一样你的sbeam账号和拥有的游戏也只拥有使用权,所以只需要买个最多25的共享账号就可以开始玩,这样算下来二鱿撅色的拥有感可能还稍微强一些,毕竟alice柚叶和astra可以组一个生草的组合,我却没法把两款3a游戏合起来玩(确信

另外我现在邦布自走棋pvp已经能稳定连赢114514盘三回啊三回,哪怕我压根就不喜欢玩这玩意可还行🤔我从这个活动开始那天到现在就没见到什么势均力敌的对手,都tm菜得抠jio🤔

thonk.25.08.26

这两天没怎么打二犹,除了尘白打了些联机🤔发现尘白waifulan简直就是联机滴神,吴论是选择近战者还是选择采集者🤔近战时尘白waifulan可以升级成600发弹夹,而且从某种程度上来说也不需要什么弹夹,只需要对着刷出来的敌人使用q然后挂机就vans力(确信🤔唯一称得上烦恼的地方是敌人在随机位置乱寄吧刷,不然我完全可以挂满6分钟(恼🤔而作为采集者时尘白waifulan也可以开个q挂机采集,尽管没法像近战时那样无限q或者600发弹夹,但采集者有个升级是采集一块石头加20能量,大招没击败敌人的尘白waifulan尽管下一次开大招需要12能量,但随便采集点石头就能充满能量,根本用不完(确信🤔有时候升空的尘白waifulan会被房间卡住,我非常怀疑是故意的(恼🤔

除此之外我在尝试些小玩意🤔出于某种申必原因我复活了两部旧手机,一部夏普r3,一部三星zflip4,还有一个旧鼠标,它比另外一个同款鼠标灵敏,那么就用它,刚好给我那三个触摸不太好使的手机配对上(确信🤔

夏普r3自然没一处是可以触摸的,几乎只能用鼠标🤔但三星的那个破手机上次摔坏后居然下半个屏幕是完全可用的,这下至少打字是不用鼠标力(确信🤔装了一款叫做CoverScreen OS的应用后可以将所有应用都在小屏幕上显示,但基本上所有遇到文本输入的地方基本上没法用,当然如果app不涉及文字输入还是勉强可以用的,也许可以拿它impact cuties?但最好在大屏幕上登录完账号🤔

实测waifu impact确实可以在小屏幕上跑起来,就是跑的效果,,,由于小屏幕的分辨率实在是太低,它连方向虚拟摇杆都显示不全,到了操纵走几步都只能走右边不能走左边的程度🤔右边的功能键倒是能用,但对于这个破手机而言,还是连上ps4手柄玩⑧🤔

之前我听说perplexity的pro优惠码是给三星手机用户准备的,只需要在三星手机的perplexity app上重新登录下就能恢复pro订阅;但等我登进去时肯定早就没法恢复力,所以我重新注册了个号在某fisch上找某个申必卖家花18整了个新的年费pro🤔我还买了个gemini的迫真第三方api,但用起来就是没官方版好用,更别提跑我那逆天色图锐评🤔

gwedAAAAAAAA.25.08.14

自从我知道有两款萌妹游戏完全不需要肝外,我似乎突然凭空多出不少时间(确信🤔多到我可以瞎寄吧整点什么🤔

比如某个时间点开始我突然对用ai给二刺螈萌妹图片p眼镜产生了兴趣🤔我试了各种乱七八糟的玩意,gemini和元宝可以直接p图,但它们首先对高分辨率的照片效果不太好,其次它们貌似没法处理gwedAAAAAAAA之类的色图(恼🤔那么只处理部分图片呢?也许可以,但之后我发现它生成的玩意拼不回原图,可能分辨率长宽比啥的都乱了套(全恼🤔

除了用也许支持多模态的llm来处理图片外,还有什么办法p图?那就是直接上photoshop,没错,就是啊逗比的那个🤔这方面也有至少三种玩法,一种是提取出眼睛部分后扔给stable diffusion来生成眼镜,然后再合成进去,有点像ai唱歌里先提取人声然后扔sovits里然后用audition合成,刚好audition也是啊逗比的(确信🤔还有一种是ps装某申必ai插件,剩下一种是用ps本身的ai功能,我今天试的是这种🤔

在最新版的ps里,在图像里选择某片区域后可以直接调用ps的图像ai,写各种提示词来对它做点什么(确信🤔但这玩意肯定破解版ps是没戏的,因为它要调用在线ai而非在本地跑🤔我找到了一个共享(?)账号的玩意,它激活之后居然可以生成一个新账号然后试用15天creative cloud全家桶,如果这个号试用结束力它还可以再生成一个,理论上来说可以吴限嫖(确信🤔

不过这套系统有它自己的过期时间,我买的是7天套装,所以我也许可以在最后一天的最后一分钟申请重新获取试用账号,这样我的试用期限可能有7+15=22天?🤔

哼哼折腾了下来最新版ps后,我掏出一个gwedAAAAAAAA的图片开始p眼镜🤔设置好全局代理后选定脸部,然后开始写提示词,生成🤔在调用了它叫做waifufly的图像转图像模型后,它生成了一个新图层(确信🤔不清楚为什么它的模型叫waifufly(半恼🤔问题是我尝试了好几遍,它生成的眼镜都会改变下面眼睛的样式,怎么写提示词(甚至包括让它只生成一个透明的眼镜图案)都没用🤔评价为甚至不如通用llm一根,纯粹路边一条(吴慈悲🤔

但至少我现在有完整版吴需破解的ps用力,试着编辑下gwedAAAAAAAA的某些差分图🤔既然它是差分图,那么我当然可以从这张图里提取些元素,那张图里再提取些元素,然后将它们作为图层放在某张底图之上,基本上就和专门的差分psd几乎一样力(确信🤔以此我修复了某些萌妹AAAAAAAA时像野兽先辈一般张口闭眼的bug(确信🤔

dudiskbitte.25.07.30

接近凌晨时开始继续上传度盘,但在此之前我撅腚重启两遍光猫🤔这次上传一开始几秒它居然出现了20MB/s以上的速度,不过以我的经验它很快就会限速到它通常的速度,然后它居然好几秒都是20MB/s以上🤔

什么b动静🤔再仔细一看任务管理器,好家伙,上行写着200Mbps🤔哇,我家这破宽带居然从60Mbps上行扩充到了200Mbps🤔不知不撅间它不到6分钟就上传完成了一个8GB包🤔

这下我得重新定个时间重新开始上传力🤔不仅如此,昨天撸的截图8GB包也能塞进去整,估计哪怕它们加起来也只需要不到3/4天甚至半天(确信🤔然后如果我需要处理waifu impact的包的话,搞不好也能在今天结束前撸完,至少上传完流式版本(确信🤔话说我那个流式度盘上传脚本还能愉快玩吗(🤔

thonk

最近从加密货币玩意那里提了一笔钱,也许我可以买点硬件🤔首先看看固态,我发现了一个写入了1PB的pm981 2t版本,好家伙,健康度干到了40%,价格居然只要450还是420来着,什么梦回2023(大嘘🤔我反正不敢用,至少不敢用在主力机上🤔X都那台阳台机子也许可以吃这个,那我到时候再说,如果它那时还在的话,现在我可没想法冒着40度以上的高温回去🤔

接下来是pm983,我发现了几个500左右(放心,只有右)的,也是写入1PB,但健康度居然还能剩89%🤔按理来说这两款固态的区别吴非是op设为7%还是15%,最终耐写性能有那么大差别?好怪哦🤔那按照这个歪理,假设都是1PB写入的矿渣,我应该去买它的1.88t版本,因为这个op设得更多(确信🤔当然intel做得更过分,这个容量级别还能整出1.6t版,感撅四分之一以上空间被拿去做了op🤔

至于什么pe6110我反正没兴趣买,因为pe4010就是个垃圾玩意,它要是好的话还好,坏的话就便乘了我插X都机子上的东西,一重启就掉盘,得usb反复抽插才能重新上线,我tm上哪儿给它远程反复抽插,等等,这玩意可以远程反复抽插吗anyway(🤔不过有一说一我居然记得在它彻底掉线之前顶着usb2的龟速将其上面的koitatu给拷到了硬盘阵列上,最终还是那个插在表面上是sas2308其实十成甚至⑨成是sas2008的垃圾阵列卡上的硬盘阵列靠谱,甚至从上面启动个koitatu也没太大问题(确信🤔至于它和那块垃圾阵列卡是怎么挺过X都高达40度以上的高温的,我暂且蒙古🤔

我要是下次找某卖家买个最新版的koitatu整合包,也许我可以直接部署到那块硬盘阵列上?不清楚🤔总之千言万语汇成一句话,我tm当年为什么只给这破机子配了512GB的固态(全恼🤔

wiebitte

才爽了三小时多点,随着一顿断线重连,它现在上行又便乘了60Mbps(恼🤔可还行,所以到底是怎么整的触发了200Mbps上行,不会真的是重启两遍路由器⑧(迫真🤔而且我也不太确定这种中途断线会不会导致pcs-go的当前文件上传失败?甚至影响后续文件?鬼知道🤔

genshinAAAAAAAA

草,waifu impact的傻逼下载器还是一如既往的垃圾,国服速度居然只有个位数,wiebitte?🤔可能和我这边还在上传有关,所以我掏出了X都的机子,在那儿下🤔那边也没好哪儿去,国服50分钟国际服59分钟(全恼🤔

但在那边配置好还有一个优势,那边上传速度比这边块,反正我吴论从哪边搞都得用度盘同步一遍(确信🤔结果极其操蛋的是我居然没法在两边同时上传,只要同时上传它就会上传失败,需要重新上传一遍甚至多遍(全恼🤔所以我只能停掉本地的,先将那边的国服上传搞定🤔

在我一顿雷普空间后,它腾出了大概280GB,但下了国服和国际服的语音等玩意后,它只剩下了60GB(恼🤔所以我采取了一种渐进的方式,先做一部分2GB包,过段时间删除已上传的部分,再制作几个新的包,然后循环🤔我那边也时不时下几次,反正它貌似并不限制一边上传一边下载(确信🤔

以这种方式我得以在8点之前登上我的几个号,至少领个600原石🤔我估计得整两个waifu impact文件夹,一个副本是我接下来要用下去的,另外一个是要打包成传统大包的(确信🤔

然后我这边再上传我剩下的几个文件,上传完后再换那边上传国际服(确信🤔

bruhfei.25.07.28

昨天花了88买了个gemini pro的迫真学生订阅🤔这玩意貌似只需要一个美区的edu邮箱和一个美区的卡就能整,但我懒得折腾🤔另外它可能还需要什么家宽ip才能撸出来,我可没这玩意🤔

但吴论如何,首次登录可能比较需要注意,比如至少ip地区得对(先不管家不家宽的),获取登录状态或者api之后,也许可以宽松一些?🤔现在google账号这一块使用了一种申必技术,我不清楚怎么整,每个卖出去的号(吴论是gv还是gemini)都附带一个base64编码的申必字符串,这玩意输进一个申必网站后就能算出2fa的那个一分钟变一次的验证码🤔有可能这玩意就是设置2fa时需要google或者微软身份验证器app扫的二维码解析后的内容,这个网站只不过实现了身份验证器算验证码的功能而已(确信🤔设置2fa时只要正确输入它算出来的验证码一次,就能完成设置,所以这玩意吴论是app还是webapp完全不需要联网(确信🤔

其实我还记得有另外一个二维码antics,度盘共享账号有一种共享法就是模拟扫码,将度盘客户端或者啥玩意登录界面的二维码截图发给它的网站,它就能给登录上🤔我吴端猜测它的原理可能是用某个已经登录的度盘客户端的身份(不清楚这个身份到底是只需要bduss和stoken就行,还是需要其他cookies数据)来访问那个二维码背后的网页,此时如果是正常客户端的话会触发一个认证对话框,点击确认登录后会再发起一次请求🤔如果是吴头后端网站的话,只需要解析出那个二维码的内容,访问它,然后再发起一次确认请求,就能完成登录授权(确信🤔

接下来我按照它的说明配置了api🤔最近在看一个ai写小说的教程,用了一款本地运行的ai多模型客户端,叫什么来着🤔设置代理后同时接入了deepseek和gemini的api,然后就可以开始一个问题两个模型同时回答力(确信🤔我没有给gemini的api申请google cloud的300美元试用,但我仍然可以用gemini 2.5 pro模型,就很怪,这是不是包括在我的迫真学生订阅里,我暂且蒙古(🤔

sayuAAAAAAAA

dudiskAAAAAAAA.25.07.24

这两天度盘突然抽风,从大概20号开始,pcs-go怎么上传都上传不动,它要么在最后的合并superfile处只能合并出一个0B的文件,要么连分片都上传不动🤔如果我用官方客户端的话,除了需要上传前扫md5啥的貌似也没啥,毕竟就像pscgo一样我也可以提前准备,10个文件同时算能上250MB/s的io,由于它是图形界面,我甚至可以先将部分文件上传7.99GB挂着,等某个申必时刻直接一分钟上传(或者说合并superfile)五个文件(确信🤔这下真的是11111!5!(大嘘🤔

但现在问题来力,我的大号突然掉登录,pcs-go那边用了不知多少年的bduss也寄力,网页版全部重新登了一遍,pcs-go也恢复了使用,但就是官方客户端整不动🤔它的登录后验证环节,依赖的是一个ie框架,而那个页面刚好改成了不兼容ie的样子🤔什么度盘团队左右脑互搏(恼🤔

理论上来说我还可以扫描登录,但度盘或者度系的那些app居然只支持手机号验证,好家伙,我这个号绑的号码首先鬼知道是什么时候绑的,其次它甚至都不算已经绑定的号码,只算待验证的,而在我买了一个新的gv给它绑时,发现死活绑不动(全恼🤔

这下给我干死循环力🤔我又不是很想给那个号绑国内号码,所以最坏情况下我只能再去注册一个号然后给它充个会员,然后往里面直接上传🤔但这么整也有问题,给我度盘转双盘的工作流加入更多麻烦不论,我一个月也上传不了5TB东西啊(迫真🤔

所以我接着去折腾pcs-go,发现X都那边的机子就能完整上传一个8GB包不出问题,我突然寻思是不是地区性网络问题?🤔那边甚至都没改过pcs endpoint🤔

最后在114514轮瞎寄吧折腾后,我发现重启光猫+使用某个旧版pcs-go就能搞定🤔非常有可能它的新版本就会引起上传问题,但也有可能新版搭配这个垃圾网络一块用才会触发,但我懒得关心力🤔这说明没事别瞎寄吧升级pcs-go(确信🤔

但至少我可以不用在本机上开虚拟机整这套玩意力🤔和若干年前不同,那段时间我只要开虚拟机它玩会儿游戏就崩(这就是为什么我会有一大堆奇怪的小型pc和笔记本),现在反倒是没这个问题,反正自从我改善了散热后它也很少由于别的原因崩🤔但很不幸的是我之前用来上传的1060笔记本,这两天它的散热彻底失效力🤔我花了80给它买了套新风扇,cpu风扇换起来貌似比较容易,但gpu风扇貌似有两个螺丝在热管底下,换的话得拆掉整个热管,那估计得拆,可能还得换换硅脂🤔

所以接下来我需要将上传任务塞进某台n5105笔记本里🤔那玩意的usb居然能同时带动一个2.5G网卡和一个nvme硬盘盒,属实牛批🤔我之前用这台机子挂机上传时它总是一段时间后暂停上传啥的,我估计是电源选项的问题,关掉usb选择性暂停后,现在上传半整天都没事,至于一整天,我不撅得那些东西能上传一整天🤔

我曾经有段时间想整一个n100小🐔🐔放客厅或者某处,专门用来上传度盘和整些杂活,比如托管clash verge🤔这种东西可以找到很多便宜的,比如400出头就能买个甚至自带2.5G口的🤔问题是它只是个准系统,内存至少配16GB得加上100(现在听说已经涨到了140?),硬盘的话1TB至少300,2TB至少500到600(所以为什么没有1.5TB的nvme固态),而且它肯定上不了22110(这意味着这些破硬盘的连续写入性能存疑,当然我要求也没那么高,它至少得能和网速匹配⑧,然后连续写入上个1TB左右),这么算下来组完将近一千,所以我没搞🤔现在看来n5105都能随便跑度盘,那么比它先进两代的n100那更能随便跑(确信🤔

但最后我还是选择将这两件事交给一台有屏幕和键盘的n5105笔记本,而且在插了两个usb硬件的情况下,它完成得还行(确信🤔它还有一些其他的任务,是n100小🐔🐔干起来可能不是那么爽的,比如操纵X都的机子,如果是n100🐔🐔的话只能用主机parsec,但这台机子它有屏幕和键盘,意味着可以直接上手,直接监测对面的画面(确信🤔

AAAA

晚上制作了一些游戏录屏8GB包,本来准备八点就开始上传一部分,然后samba拷,结果发现这狗玩意拷起来极慢,只有40MB/s,而且更要命的是它能占用所有io导致上传也变慢🤔目测它插在那台破笔记本的typec口上时是usb2模式🤔但换别的usb口它又不识别(恼🤔

这下我只能拔下来接着拷文件力🤔途中想先往笔记本上拷几个文件接着上传,结果那玩意自带的sata固态性能实在是垃圾,目测只能暂停上传🤔到所有东西拷完后再去上传,好家伙,那个文件最后会出错,然后再试一次又出一毛一样的错(全恼🤔最后重置光猫后才能接着正常上传🤔

我吴端猜测,文件上传的状态可能不仅包括pcs_uploading.json里面记录的东西,还包括度盘服务器上记录的东西,这部分东西非常有可能和源ip相关,如果我想重新上传什么文件,光删了pcs_uploading.json是没用的,服务器那边保存的东西和新的pcs_uploading.json里的东西对应不上,它会拒绝合并文件(全恼🤔而重启光猫相当于重置了ip,这样度盘服务器那边会重新记录文件上传状态,然后就可以正常上传文件力(确信🤔

至于度盘客户端为什么没有这个问题,我猜测它有某种申必接口重置这套玩意(确信🤔它之前那个检测秒传的傻逼玩意也许也能做点什么?pcs-go里我是特意忽略了这步的,毕竟我即将上传的东西要是真的和它服务器里的某样东西一毛一样,那可真是见了你妈鬼了(全恼🤔