Gw2 API 开发文档

API Version 1.3.0


简介

本网站致力于自动采集激战2相关数据,现将部分数据制作成API对外开放,以方便制作机器人的小伙伴们开发使用 :)

数据采集

本网站提供的API数据均为脚本自动采集的数据,不包含人工处理,因此对于数据的准确性,我们无法100%保证,对于采集中出现的BUG,我们会逐步修复。

数据来源

官方API、官方网站、官方Wiki 等

数据处理

本网站会对提供的数据进行加工,通过反查物品、成就等数据库以提供更适用于开发的数据,如您需要原始数据,请通过官方API获取。

基本知识

如果您第一次接触API,您需要先自行了解以下内容:

  1. 如何发起一次HTTP请求
  2. 如何解析并使用JSON数据

游戏日常API

简介

本API提供了当前时间(UTC+8)所对应的游戏日常数据,数据与国服时间一致,每天早上8点更新

API地址

https://gw2.wishingstarmoye.com/gw2api/daily

中英对照数据打包文件(实时)

Demo页面

https://gw2.wishingstarmoye.com/gw2api/dailypage

响应数据

响应内容为JSON格式,基本结构如下:

{
    "date": "2019-03-03",
    "pvp": [{
        "en": "Daily PvP Reward Earner",
        "zh": "日常PvP奖励获得者",
        "detail": "通过PvP奖励分支获得个奖励。",
        "reward": {
            "count": 1,
            "name": "阵亡英雄宝箱"
        },
        "id": 1856,
        "desc": ""
    }],
    "fractals": [{
        "en": "Daily Recommended Fractal—Scale 10",
        "zh": "日常推荐碎层 - 10级难度",
        "detail": "通过狮子拱门的传送门,在迷雾碎层完成个10级难度的碎层。",
        "recommended": {
            "en": "Molten Boss Fractal",
            "zh": "熔火头目"
        },
        "reward": {
            "count": 1,
            "name": "碎层学徒研究宝箱"
        },
        "id": 2560,
        "desc": ""
    }, {
        "en": "Daily Tier 4 Chaos",
        "zh": "日常混沌4级",
        "detail": "在76级或更高难度下完成混沌碎层。",
        "reward": {
            "count": 1,
            "name": "碎层大师宝箱"
        },
        "id": 3038,
        "desc": ""
    }],
    "pve": [{
        "en": "Daily Maguuma Jungle Forager",
        "zh": "日常迈古玛丛林收割者",
        "detail": "在迈古玛丛林以下地图里收割植物:卡勒顿之森、度量领域、布里斯班野地、闪萤沼泽、漩涡山。",
        "reward": {
            "count": 1,
            "name": "植物宝箱"
        },
        "id": 1973,
        "desc": "为经济发展添动力。"
    }],
    "wvw": [{
        "en": "Daily WvW Invasion Defender",
        "zh": "日常世界之战侵略者克星",
        "detail": "在世界之战里打败敌方入侵者。",
        "reward": {
            "count": 1,
            "name": "卓越宝箱"
        },
        "id": 1846,
        "desc": "我的城堡我做主。"
    }]
}
字段名 数据类型 说明
date string 当前游戏日常数据对应日期
pve array PvE日常数据
pvp array PvP日常数据
wvw array WvW日常数据
fractals array 碎层日常数据
id number 日常API ID
en string 日常英文名
zh string 日常中文名
detail string 日常详细说明
desc string 附加描述信息
reward array 奖励物品信息,count - 数量,name - 中文名
recommended array 碎层日常推荐详细信息,取自WIKI,每天同步,非实时数据,en - 英文名,zh - 中文名

Python2.7 数据处理实例

处理脚本实例

import requests
import json

r = requests.get('https://gw2.wishingstarmoye.com/gw2api/daily', timeout=20)
data = json.loads(r.text)
date = data['date']
data_pve = data['pve']
data_pvp = data['pvp']
data_wvw = data['wvw']
data_fac = data['fractals']

msg = '[+] 游戏每日日常\n'.decode('utf8')
msg = msg + '[-] PvE\n'
for pve in data_pve:
    msg = msg + pve['zh'] + '  '
msg = msg.strip('  ') + '\n'
msg = msg + '[-] PvP\n'
for pvp in data_pvp:
    msg = msg + pvp['zh'] + '  '
msg = msg.strip('  ') + '\n'
msg = msg + '[-] WvW\n'
for wvw in data_wvw:
    msg = msg + wvw['zh'] + '  '
msg = msg.strip('  ') + '\n'
msg = msg + '[-] 碎层\n'.decode('utf8')
msg_tuijian = '推荐:'.decode('utf8')
msg_4ji = '4级:'.decode('utf8')
for fac in data_fac:
    if '推荐'.decode('utf8') in fac['zh']:
        msg_tuijian = msg_tuijian + fac['zh'][9:] + '  '
    elif '4级'.decode('utf8') in fac['zh']:
        msg_4ji = msg_4ji + fac['zh'][:-2] + '  '
msg = msg + msg_tuijian.strip('') + '\n' + msg_4ji.strip('')

处理结果实例

[+] 游戏每日日常 (UTC+8)
[-] PvE
日常科瑞塔伐木者  日常活动参与者  日常罗纳通道事件完成者  日常考迪克斯庄园
[-] PvP
日常PvP奖励获得者  排位与非排位竞技场日常比赛参与者  日常PvP锦标赛参与者  PvP排位赛赢家
[-] WvW
日常世界之战商队骚扰者  日常世界之战遗址大师  日常世界之战营地占领者  日常世界之战守卫者
[-] 碎层
推荐:19级难度  29级难度  66级难度  
4级:日常噩梦  日常雪盲  日常石海

活动API

简介

本API提供了当前可参与的空中网活动以及最近几天的公告。

本API提供的数据由脚本自动抓取的国服官网数据,脚本会对活动页面中的时间范围进行自动提取,并记录页面中提取到的最早的时间节点以及最晚的时间节点,如果无法提取到时间范围(如公告等不存在时间范围,或时间范围嵌入在图片中),将默认记录有效期为4-7天,即最低4天,自动补足至周一00:00

API地址

https://gw2.wishingstarmoye.com/gw2api/activity

Demo页面

https://gw2.wishingstarmoye.com/gw2api/activitypage

请求参数

参数名 参数类型 请求方式 说明
count Integer GET (可选) 获取已失效活动数量,默认为5,最大为20
day Integer GET (可选) 获取过去N天已失效活动,默认为7,最大为30

响应数据

响应内容为JSON格式,基本结构如下:

{
    "activitys": [
        {
            "title": "《激战2》轻松攒积分 道具兑不停(4月12-6月10…",
            "url": "http:\/\/do.gw2.kongzhong.com\/task\/",
            "public_date": "04-11",
            "starttime": "2018-04-12 00:00:00",
            "endtime": "2018-06-10 00:00:00"
        }
    ],
    "disactivitys": [
        {
            "title":"欢度周末 消费送礼",
            "url":"http:\/\/gw2.kongzhong.com\/act\/2018\/files\/libao\/index.html",
            "public_date":"05-24",
            "starttime":"2018-05-25 00:00:00",
            "endtime":"2018-05-27 23:59:00"
        }
    ]
}
字段名 数据类型 说明
activitys array 有效活动列表
disactivitys array 已失效活动列表
title string 活动&公告标题
url string 活动&公告链接
public_date string 发布时间
starttime string 开始时间。
- 当脚本提取到时间节点时,将记录页面中最早的时间节点
- 当脚本无法提取时间节点时,将记录发布当天0点
endtime string 结束时间。
- 当脚本提取到时间节点时,将记录页面中最晚的时间节点;
- 当脚本无法提取时间节点时,有效期默认为4-7天,即最低4天,自动补足至周一00:00
- 例如:周五发布,有效期为4天,周二00:00失效;周二发布,自动补足,有效期为6天,周一00:00失效;

Python2.7 数据处理实例

处理脚本实例

import requests
import json

r = requests.get('https://gw2.wishingstarmoye.com/gw2api/activity?count=5&day=4', timeout=20)
json_data = json.loads(r.text)
activitys = json_data['activitys']
disactivitys = json_data['disactivitys']
msg = '[+] 当前可参与活动或公告\n'.decode('utf8')
for act in activitys:
    msg = msg + "[" + act['public_date'] + "] " + act['title'] + "\n" + act['url'] + "\n"
msg = msg + '[x] 最近已失效活动或公告\n'.decode('utf8')
for act in disactivitys:
    msg = msg + "[已失效] ".decode('utf8') + act['title'] + "\n" + act['url'] + "\n"
msg = msg.strip('\n')

                                

处理结果实例

当前可参与活动或公告
[05-17] 五月告白季 激战来助威
http://gw2.kongzhong.com/act/2018/files/gaobai/index.html
[05-15] 【周年庆】《激战2》周年庆典(续)
http://do.gw2.kongzhong.com/gw2qd/
[04-20] 免费畅游泰瑞亚 激活福利助战伊伦娜(4月20-7月…
http://do.gw2.kongzhong.com/cdkyh/
[04-11] 《激战2》轻松攒积分 道具兑不停(4月12-6月10…
http://do.gw2.kongzhong.com/task/

资讯API

简介

本API提供了第三方资讯数据,包括小邋遢、明眸游戏、和风议会(NGA)。

API地址

https://gw2.wishingstarmoye.com/gw2api/news

请求参数

参数名 参数类型 请求方式 说明
count Integer GET (可选) 获取资讯的最大数量,默认为30,最大为100
day Integer GET (可选) 获取过去N天资讯信息,默认为90,最大为180

响应数据

响应内容为JSON格式,基本结构如下:

[{
    "type": "明眸",
    "date": "2019-04-12",
    "title": "2019.4.12当前事件",
    "url": "http:\/\/www.mimogame.com\/h-nd-67.html"
}, {
    "type": "小邋遢",
    "date": "2019-04-10",
    "title": "当前事件“热心英雄”简易指南",
    "url": "https:\/\/scruffy.wishingstarmoye.com\/helpful-hero-current-events-and-riftstalker-weapons-guide"
}, {
    "type": "和风议会",
    "date": "2019-04-03",
    "title": "【前瞻】激战2的后续开发计划",
    "url": "https:\/\/bbs.nga.cn\/read.php?tid=16842070&_ff=-235147"
}]
字段名 数据类型 说明
type string 来源
date string 发布时间
title string 资讯标题
url string 资讯链接

API文件下载

简介

本API提供中英对照JSON文件下载