📈
マイクラ鯖の情報を取得できるwebAPIを作った
開発経緯
Pythonでapiってどうやって作るんだろうってなったので試しに作ってみただけです。
阿波連さんを見てたら一瞬で開発終わった。
作ったもの
curl https://mcapi.ziaenso.me/status?address=<サーバーアドレス>&port=<ポート>
で呼び出せます。
address=
でアドレス又はIPを指定します。これは必須。
port=
でポートを指定します。25565番の場合は必要ないです。
jsonで帰ってきます。
ハイピクセルでやってみるよ。あとcurlだとjsonが見にくいのでブラウザでやりました。
https://mcapi.ziaenso.me/status?address=play.hypixel.net
レスポンスはこれ。
{
"latency": 345.0846040000215,
"max_players": 200000,
"motd": " \u00a7aHypixel Network \u00a7c[1.8-1.20]\n \u00a7d\u00a7lSKYBLOCK 0.19.11 \u00a77| \u00a7b\u00a7lBEDWARS SLUMBER HOTEL",
"online": true,
"players_online": 43184,
"version": "Requires MC 1.8 / 1.20"
}
latency
はサーバーのpingです。max_players
は最大参加人数、motd
はMOTDだよ。
online
はbool値でtrueならオンラインです。players_online
は参加中のプレイヤー数、
version
はサーバーのバージョンです。
使ったもの
Python+Flask+mcstatusです。
そして実行にはGoogleAppEngineを使用しています。なぜかリージョンを台湾にしちゃったので若干レスポンス悪い。
作ってみて
「なんでこんなの作ったんだ??」となりましたかね。でもFlaskを使ったAPIの作成を学ぶといった点では良かったのかも。
あとはGoogleCloudを使ったりしたのでなんかプロっぽいって。無料枠が充実しているので助かっています。
Discussion