V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Pipecraft
V2EX  ›  问与答

V2EX 支持改用户名了大家知道吗?那给用户打标签的小鱼标签还能追踪到原来的用户吗?

  •  
  •   Pipecraft · 9 小时 43 分钟前 · 2508 次点击

    V2EX 支持改用户名了大家知道吗?

    最近 V2 上线了改用户名的功能,只需支付 50 银币,就有一次改名的机会。

    V2EX 改名

    相关主题: https://www.v2ex.com/t/1160145

    改用户名之前,一定先确认一下新用户名是否被占用。 https://www.v2ex.com/member/[new name]

    那给用户打标签的小鱼标签还能追踪到原来的用户吗?

    答案:无法自动追踪。因为它是通过用户的链接绑定的标签,用户的链接随着用户名的变更随着改变。

    如果此人改了用户名,只能手动找到对应的新用户名

    解决方案

    #1. 访问列表页面: https://utags.link/

    #2. 筛选所有已打过标签的用户名的链接。(因为还支持给主题、节点打标签)

    小鱼标签筛选用户 小鱼标签导出数据

    #3. 提取所有用户的 URL 列表

    小鱼标签提取 URL

    #4. 写个脚本,找出所有状态码为 404 的 URL ,提取旧用户名。

    #5. 搜索旧用户名,找到他发过的主题或回复,找到新的用户名。

    https://www.google.com/search?q=site:v2ex.com/t%20"pipecraft"
    

    #6. 在列表页面,修改 URL 为新的用户名

    小鱼标签修改 URL

    完毕。

    如有问题,欢迎反馈讨论。

    33 条回复    2025-09-23 20:05:52 +08:00
    xz410236056
        1
    xz410236056  
       9 小时 35 分钟前
    这么多年了终于可以改名了
    Pipecraft
        2
    Pipecraft  
    OP
       9 小时 29 分钟前
    @xz410236056 #1 真没想到居然会出这个功能。
    过去的帖子里的 @用户名回复都对不上号了。
    Pipecraft
        3
    Pipecraft  
    OP
       8 小时 53 分钟前
    对了,有一个很好的 TIP 分享给大家。

    我一般打标签时,会把帖子的 ID 也加上,日后可以查到当时为什么加了这个标签。
    ID 可以作为标签加上,



    也可以加在备注里。
    Ketteiron
        4
    Ketteiron  
       8 小时 38 分钟前   ❤️ 1
    过往帖子全乱了,谁回复谁只能靠脑补
    需要一个改名历史记录
    sillydaddy
        5
    sillydaddy  
       8 小时 38 分钟前   ❤️ 1
    其实可以追踪,但就是有些麻烦。
    这个根据 id 查用户名的 API 目前还有效的:
    https://www.v2ex.com/api/members/show.json?id=35003
    superrichman
        6
    superrichman  
       8 小时 35 分钟前
    @sillydaddy 这没法反查,也不方便
    Razio
        7
    Razio  
       8 小时 34 分钟前   ❤️ 1
    这下只能 Block 了,不方便看乐子了
    sillydaddy
        8
    sillydaddy  
       8 小时 33 分钟前   ❤️ 1
    @superrichman 先根据现在打的标签用户名,找到 id ,id 其实就是注册的第几号会员(点进用户主页就有)。知道是给哪个 id 打的标签了,那即使改名,id 也不会变了。
    InDom
        9
    InDom  
       8 小时 32 分钟前   ❤️ 1
    @xz410236056 趁着大批量改名前起一个脚本, 把拉黑的用户对应的加入时间与顺序记下来, 作为 id 使用

    V2EX 第 554663 号会员,加入于 2021-08-30 01:06:10 +08:00

    554663 应该就是 id 了吧?

    我看官方自己的 block 和 头像 都用了这个 ID
    InDom
        10
    InDom  
       8 小时 31 分钟前   ❤️ 3
    chaselen
        11
    chaselen  
       8 小时 31 分钟前   ❤️ 2
    @superrichman 第几号会员,id 就是这个
    superrichman
        12
    superrichman  
       8 小时 28 分钟前
    @chaselen 原来如此,感谢。这样的话确实是可行的,就是有点绕。
    Razio
        13
    Razio  
       8 小时 24 分钟前   ❤️ 1
    @sillydaddy #5 脚本接口调用多了,估计要被站长或者 cf 封了吧
    okxyz
        14
    okxyz  
       8 小时 21 分钟前
    挺好,改了,
    Pipecraft
        15
    Pipecraft  
    OP
       8 小时 0 分钟前
    @Ketteiron #4 回复里的 @用户名 不更新,去历史记录查的话太费劲了。
    后台每天能批量改一下就好了。
    Pipecraft
        16
    Pipecraft  
    OP
       7 小时 54 分钟前
    @sillydaddy #8 记录 ID 并自动更新用户名是个解决方案。
    不知道有没有根据现在的用户名查 ID 的 API ,不然就要爬用户主页,获得 ID 了。

    改名的毕竟是极少数,也不知道他们什么时候改名。可以加个定期批量检查的功能。
    Pipecraft
        17
    Pipecraft  
    OP
       7 小时 53 分钟前
    @Razio #13 说的是,有风险。改名的毕竟是极少数,也不知道他们什么时候改名。可以加个定期检查的功能。
    1daydayde
        18
    1daydayde  
       7 小时 51 分钟前   ❤️ 1
    改名的初衷是什么,各位为何还放不下

    > 最近看仙侠剧看多了 XD
    sillydaddy
        19
    sillydaddy  
       7 小时 43 分钟前   ❤️ 1
    @Pipecraft 我有一点印象,但是找不到了。对,根据 ID 获取用户名的 rate_limit 很小,不能频繁调用。所以说很麻烦。
    @Razio #13 这个接口应该是有严格的 rate_limit 限制,防止大规模爬取用户信息。
    Pipecraft
        20
    Pipecraft  
    OP
       7 小时 31 分钟前
    @sillydaddy #19 因为这个功能被封号或封 IP 就不好了,还是先保留吧。
    sillydaddy
        21
    sillydaddy  
       7 小时 30 分钟前
    @Pipecraft 看了下网页的源码,源码中的每个用户头像 img ,是包含用户的 id 信息的,就像 #10 楼 @InDom 的截图一样。
    这样的话,就省事很多了。不需要再调用那个 API 来获取最新的用户名了,只需要比较打标签的 id 与回复中的 id 就行。只需要初始记录一次打标签时的用户 id ,这个也不用爬用户主页,因为打标签时的页面里面也包含了。
    jaysonmac
        22
    jaysonmac  
       7 小时 29 分钟前
    这下买号卖号的更方便了
    jacketma
        23
    jacketma  
       7 小时 24 分钟前
    @zhangsan 以前 diss 过 lisi ,然后 zhangsan 改名 wangwu; 后来一个新用户注册名为 @zhangsan, 被 lisi 一顿输出,一头雾水😄😂
    Pipecraft
        24
    Pipecraft  
    OP
       7 小时 18 分钟前
    @sillydaddy #21 确实头像里有用户 ID ,可以省很多事情了。但只有改了头像的人才有,使用默认头像的图片地址里没有 ID 。😂😂😂
    Pipecraft
        25
    Pipecraft  
    OP
       7 小时 13 分钟前
    @jacketma #23 看看这种情况什么时候发生。有意思了。
    sillydaddy
        26
    sillydaddy  
       6 小时 44 分钟前
    @Pipecraft 得,来个两头堵。
    我来提一个「终极」方案,把所有信息都恰好用上:
    1. 打标签还是同时记录下 id 和用户名。
    2. 然后,由用户主动发起「更新」操作,把他当前打过标签的那些 id ,更新到最新的名字。
    3. 这个「更新」操作是由用户本地发起的,所有时间上是分散的,因此不会造成频繁的 API 调用。
    4. 那么用户何时更新呢?可以由插件给予提醒,提醒的时机很微妙。前面已经知道了,有些用户的头像没有改,有些改了。改了头像的用户,我们是可以知道它们的{id,用户名}是不是与插件记录{id,用户名}是不是一致的!如果不一致,说明这个 id 改名字了。这时就可以提醒用户,“你的标签需要把名字更新一下了,因为在你的标签列表中已经发现了改名的用户”。考虑到改头像和不改头像的人,有一个对应的比例,如果在改过头像的账号里面了改名现象,根据概率论,没改过头像的账号里面肯定也发生了改名现象——就像投放鱼苗的概率数学题。

    这也太难了😂。
    lswlray
        27
    lswlray  
       5 小时 42 分钟前
    A 改成 B ,C 一查,A 没有,就改成 A
    以后,或许成为一个新产业。
    Tink
        28
    Tink  
    PRO
       5 小时 33 分钟前
    没用,我可以天天改
    Tink
        29
    Tink  
    PRO
       5 小时 33 分钟前
    最好的办法是 tag 和 id 对应就行了
    stone9527
        30
    stone9527  
       2 小时 37 分钟前
    行不更名,坐不改姓
    ReturnNull1
        31
    ReturnNull1  
       2 小时 9 分钟前
    我想问问 1024 这个名字被谁抢了
    good
        32
    good  
       42 分钟前
    名字我就不改了
    Livid
        33
    Livid  
    MOD
    PRO
       4 分钟前
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3027 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 12:10 · PVG 20:10 · LAX 05:10 · JFK 08:10
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.