V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Useful Links
Minecraft Wiki
合成配方
zisen
V2EX  ›  Minecraft

如果获得 minecraft 基岩版最新的版本号?

  •  
  •   zisen · 2021-12-07 03:29:01 +08:00 via iPhone · 1976 次点击
    这是一个创建于 843 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我部署了一个 minecraft bedrock edition dedicated server ,然后想用 python 写一个自动更新服务端文件的脚本,参考别人的脚本是下载 mojang 的 server download 页面,然后在页面中解析出最新版服务器文件的下载地址,随后下载。但是我发现 mojang 似乎更新了他们的网站,可能做了一些反爬措施,导致我不能用 wget 或者 requests 下载网页。
    请问各位大佬有没有别的办法获取到最新的版本号例如 1.18.0.2 这样的,因为服务器文件的下载地址是一个固定的链接末尾加上版本号,所以只要知道了版本号就能下载了。
    第 1 条附言  ·  2021-12-28 07:59:33 +08:00
    谢谢大家的解答,4 楼的办法是有效的
    13 条回复    2021-12-08 03:06:56 +08:00
    billzhuang
        1
    billzhuang  
       2021-12-07 07:52:17 +08:00   ❤️ 1
    bedrock 是全平台同步的,所以你可以看 app store 的版本或者 google play 的版本, 或者 xbox 的版本,或者 ps5 的版本。
    Removable
        2
    Removable  
       2021-12-07 08:39:36 +08:00
    本想说 BMCLAPI ,但是看了一眼,好像只提供 java 版的版本号接口
    zisen
        3
    zisen  
    OP
       2021-12-07 09:38:29 +08:00 via iPhone
    @Removable 是的,网上关于基岩版的讨论和支持相较于 java 版本的还是比较少,也没有类似的镜像站点可以方便国内用户加速下载
    2i2Re2PLMaDnghL
        4
    2i2Re2PLMaDnghL  
       2021-12-07 09:38:38 +08:00   ❤️ 1
    zisen
        6
    zisen  
    OP
       2021-12-07 09:40:13 +08:00 via iPhone
    @2i2Re2PLMaDnghL UA 头指的是 user agent 吗,我是 python 小白,这是我尝试写的第一个脚本😂
    zisen
        7
    zisen  
    OP
       2021-12-07 09:42:36 +08:00 via iPhone
    @2i2Re2PLMaDnghL 我之前尝试过 requests+headers 下载 mojang 的官方网站,但是还是被拒绝下载,不过你给的这个 wiki 的链接没准管用
    2i2Re2PLMaDnghL
        8
    2i2Re2PLMaDnghL  
       2021-12-07 09:52:07 +08:00   ❤️ 1
    @zisen 我是把浏览器发出的请求用 curlconverter.com 转换后一行行注释掉来试错出最小量的,最后发现只需要添上我自己的 user-agent header 就能正常获取到下载地址。
    zisen
        9
    zisen  
    OP
       2021-12-07 10:00:04 +08:00
    @2i2Re2PLMaDnghL 感谢大佬!运行了一下你的程序,发现可以输出下载地址了!
    怀疑可能我之前在网上找的 UA 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36' 被识别出来了?
    一直在 awaiting
    2i2Re2PLMaDnghL
        10
    2i2Re2PLMaDnghL  
       2021-12-07 10:21:42 +08:00
    @zisen 根据 https://caniuse.com/usage-table ,Chrome/39 占比 0.00% 少于万分之一用户。
    试了下反而直接掏出一个完全莫名其妙的 UA (比如随手写了个 `gg/1` )反而能获取到……
    requests 里面可以添加一个 timeout 以确保 fail fast
    soulzz
        11
    soulzz  
       2021-12-07 11:13:09 +08:00
    soulzz
        12
    soulzz  
       2021-12-07 11:14:14 +08:00
    或者直接使用上述项目的脚本
    start 启动时会自动更新
    update 是更新脚本自身
    IgniteWhite
        13
    IgniteWhite  
       2021-12-08 03:06:56 +08:00
    我用的这个 https://github.com/itzg/docker-minecraft-bedrock-server 有更新功能,你可以去看看源码
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3008 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 11:04 · PVG 19:04 · LAX 04:04 · JFK 07:04
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.