明日方舟公告信息

用一个简单的抓包工具分析了一下客户端内公告链接,最开始是测试的IOS版本,安卓和B服通过猜测得到。

链接

iOS:

https://ak-fs.hypergryph.com/announce/IOS/announcement.meta.json

Android:

https://ak-fs.hypergryph.com/announce/Android/announcement.meta.json

Bilibili:

https://ak-fs.hypergryph.com/announce/Bilibili/announcement.meta.json

抓取这个并没有什么恶意,纯粹是为了我的RSS Bot能更高效获取公告信息。之前用Bot通过Rsshub获取明日方舟微博的更新,但这个官博特别喜欢将新微博置顶,而Rsshub又无法抓取到置顶微博的内容,原因在于未登录状态下访问用户界面不显示置顶微博 这微博做的什么鬼,直接导致我无法实时获取官博动态,只能另辟蹊径了。

另外实现了一个可以根据上述JSON动态生成的JQuery静态网页,但遇到了CORS跨域问题,只好用自己搭建的Flask作为代理(用过国外的CORS代理服务,太慢)以绕开CORS限制。这个没什么好说的就略过了。

Json分析

{ 
    "focusAnnounceId": "153", 
    "announceList": [ 
        { 
            "announceId": "153", 
            "title": "「骑兵与猎人」\n活动即将开启", 
            "isWebUrl": true, 
            "webUrl": "https://ak-fs.hypergryph.com/announce/IOS/announcement/153.html", 
            "day": 27, 
            "month": 5, 
            "group": "ACTIVITY" 
        }, 
        { 
            "announceId": "149", 
            "title": "银灰色的荣耀\n限时出率上升", 
            "isWebUrl": true, 
            "webUrl": "https://ak-fs.hypergryph.com/announce/IOS/announcement/149.html", 
            "day": 23, 
            "month": 5, 
            "group": "ACTIVITY" 
        }, 
...... 
        { 
            "announceId": "98", 
            "title": "《明日方舟》\n公平运营申明", 
            "isWebUrl": true, 
            "webUrl": "https://ak-fs.hypergryph.com/announce/IOS/announcement/98.html", 
            "day": 30, 
            "month": 4, 
            "group": "SYSTEM" 
        }, 
        { 
            "announceId": "94", 
            "title": "开服活动介绍", 
            "isWebUrl": true, 
            "webUrl": "https://ak-fs.hypergryph.com/announce/IOS/announcement/94.html", 
            "day": 30, 
            "month": 4, 
            "group": "ACTIVITY" 
        } 
    ], 
    "extra": { 
        "enable": false, 
        "name": "额外活动" 
    } 
}

其实也没啥好分析的,无非就是focusAnnounceId代表当前默认,extra内含额外活动信息(现在还没有),announceList包含所有信息。每个内容都如此简单易懂。

Last modification:November 17th, 2019 at 10:56 pm

Leave a Comment