Перейти к публикации

[Гайд] Как работать с API VIMEWORLD. Наглядные примеры. I часть.


mr1lol
Перейти к решению Решение от mr1lol,

Рекомендованные сообщения

Опубликовано: (изменено)

ПЕРЕД ТЕМ, КАК ЗАДАВАТЬ ВОПРОСЫ ПОЧИТАЙТЕ СООБЩЕНИЯ НИЖЕ! НИЖЕ Я ПРИВЕЛ ПОДРОБНОЕ ОБЪЯСНЕНИЕ С СКРИНШОТАМИ!!!

 

Ни для кого не секрет, что уже есть сервисы, такие как VimeTop, позволяющие смотреть подробно информацию о игроке. 

 

Как же они работают?

 

Что нам нужно для того, чтобы работать с API VIMEWORLD:

  • Хостинг (можно пользоваться бесплатным. Рекомендую: Beget)
  • VimeWorld API
  • Эта тема

Начало.

  1. После того, как у нас появился хостинг, мы шагаем в папочку /ваш сайт/public_html/ и удаляем там все и создаем файл index.php (ПКМ -> новый файл).
  2. На этой странице мы хотим отобразить общий онлайн сервера. Для этого нам нужна ссылка: https://api.vime.world/online. Отображать общий онлайн мы будем следующим образом, используя язык Web-программирования PHP: 
    <?php
    echo "Online: "; 
    $json =  file_get_contents("https://api.vime.world/online"); //Мы получаем данные из API
    $a = json_decode($json, true); //мы их перефразируем в нормальный понятный вид
    echo $a['total'];//выводим то, что нам нужно
    ?>
  3. Чтобы отобразить онлайн по отдельности (на разных мини играх) - нам нужно это:

    <?php
    echo "<p> Online: "; 
    $json =  file_get_contents("https://api.vime.world/online"); //Мы получаем данные из API
    $a = json_decode($json, true); //мы их перефразируем в нормальный понятный вид
    echo $a['total'];//Общий онлайн
    echo "</p>";
    
    echo "<p>SkyWars:";
    echo $a['separated']['sw'];//SkyWars онлайн
    echo "</p>";
    
    echo "<p>Bedwars:";
    echo $a['separated']['bw'];//BW онлайн
    echo "</p>";
    
    echo "<p>Duels:";
    echo $a['separated']['duels'];//DUELS онлайн
    echo "</p>";
    
    echo "<p>LOBBY:";
    echo $a['separated']['lobby'];//Lobby онлайн
    echo "</p>";
    ?>
  4. Потом мы просто сохраняем файл и переходим по нашей ссылке, которая у нас общедоступная. И видим итог!

Если вам нужно, я могу еще поделать разные примеры работы с API VimeWorld. Пишите вопросы  :) .

Изменено пользователем mr1lol
Опубликовано:

ничего не понял,но было интересно

Я пока что только привел кусочки кода, но потом все расскажу подробно как о чем и где, если нужно, конечно. Просто боюсь, что многие этим не интересуются ((.

Опубликовано:

Рассказываю скринами: 

 

1) Этап: Создаем веб-хостинг 

http://skrinshoter.ru/i/010219/rVaoK4UU.pngИ получаем данные, по которым заходим в наш ЛК https://cp.beget.com/

2) Когда вошли на cp.beget.com - тыкаем на Файловый менеджер

http://skrinshoter.ru/i/010219/H0ArSHeM.png

2) Далее следуем скриншотам

http://skrinshoter.ru/i/010219/c1KQnI19.png

3) Далее создаем файл с названием index.php

http://skrinshoter.ru/i/010219/aadPeEZJ.png

4) Изменяем файл

http://skrinshoter.ru/i/010219/UKGnXOUw.png

5) и вставляем в него следующий код: 

<?php
echo "<p> Online: "; 
$json =  file_get_contents("https://api.vime.world/online"); //Мы получаем данные из API
$a = json_decode($json, true); //мы их перефразируем в нормальный понятный вид
echo $a['total'];//Общий онлайн
echo "</p>";

echo "<p>SkyWars:";
echo $a['separated']['sw'];//SkyWars онлайн
echo "</p>";

echo "<p>Bedwars:";
echo $a['separated']['bw'];//BW онлайн
echo "</p>";

echo "<p>Duels:";
echo $a['separated']['duels'];//DUELS онлайн
echo "</p>";

echo "<p>LOBBY:";
echo $a['separated']['lobby'];//Lobby онлайн
echo "</p>";
?>

5) переходим по ссылке, которую мы скопировали: <тут должен быть ваш id>.beget.tech

http://skrinshoter.ru/i/010219/MYYqKR6N.png

И видим следующую картину:

http://skrinshoter.ru/i/010219/vx10DmXb.png

Опубликовано: (изменено)

II ЧАСТЬ. Модераторы онлайн. Чтобы реализовать, нужно обязательно читать I часть, которая находится выше!

1) Копируем данный код и разбираемся по комментариям что в нем происходит:

<?php
$json =  file_get_contents("https://api.vime.world/online/staff"); //получаем саму информацию
 
$staff = json_decode($json, true); //приводим в нормальный вид
echo "<p>";
echo implode(', ', array_column($staff, 'username')); //выводим ники модераторов через запятую
echo "</p>";
?>

2) Вставляем его в наш код из первой части ВНИЗ!

3) Сохраняем файл, обновляем страницу, и готово!


Итого полноценный код VimeWorld API по I + II части:

<?php
echo "<p> Online: "; 
$json =  file_get_contents("https://api.vime.world/online"); //Мы получаем данные из API
$a = json_decode($json, true); //мы их перефразируем в нормальный понятный вид
echo $a['total'];//Общий онлайн
echo "</p>";

echo "<p>SkyWars:";
echo $a['separated']['sw'];//SkyWars онлайн
echo "</p>";

echo "<p>Bedwars:";
echo $a['separated']['bw'];//BW онлайн
echo "</p>";

echo "<p>Duels:";
echo $a['separated']['duels'];//DUELS онлайн
echo "</p>";

echo "<p>LOBBY:";
echo $a['separated']['lobby'];//Lobby онлайн
echo "</p>";

$json = file_get_contents("https://api.vime.world/online/staff"); //получаем саму информацию

$staff = json_decode($json, true); //приводим в нормальный вид
echo "<p>";
echo implode(', ', array_column($staff, 'username')); //выводим ники модераторов через запятую
echo "</p>";
?>
Изменено пользователем mr1lol
Опубликовано:

Скоро солью свой мини-проект и покажу как его устанавливать, НО ОН СОЗДАН С УПОРОМ НА ТО, ЧТОБЫ НАУЧИТЬСЯ ПОЛЬЗОВАТЬСЯ API VIMEWORLD, из этого я не очень много заморачивался над дизайном и т.д. и делал его за 3 часа.

http://skrinshoter.ru/i/040219/FEQe9Ah6.pnghttp://skrinshoter.ru/i/040219/3xSSFroc.png


Я покажу все на видео, т.е. каждый сможет установить и сделать свой проект по Vimeworld API.


Проект будет достаточно оптимизированным, а так же будет легко передвигаться с общей информации по игроку до его друзей и статистики.

Опубликовано:
  • Решение
Опубликовано: (изменено)

Ссылка к I шагу: https://beget.com/ru/free-hosting

Сам код: https://yadi.sk/d/EsL8SNbTBRuw4w

Отзывы сюда

Надеюсь, что у вас все получится, принимаю вопросики.

https://youtu.be/mP_0BVcba40

Изменено пользователем mr1lol
  • 5 месяцев спустя...
  • 9 месяцев спустя...
Опубликовано: (изменено)

Как сделать это через python?

Уже сам разобрался)

Изменено пользователем ZrangoYT
  • 1 месяц спустя...
Опубликовано:

фу пхп через питон реквестами лол

 

как

(lambda p_a: (lambda g_a, BWH: (print("---------USER INFO---------"), [print(*_, sep=": ") for _ in p_a["user"].items()], print("---------GUILD INFO---------"), [print(*_, sep=": ") for _ in g_a.items()] if g_a is not None else print("None"), print("---------BWH INFO---------"), [print(i, _[0], 'Win' if _[1] else 'Lose') for i, _ in zip(range(1, len(BWH) + 1), BWH)], print(f'{len(BWH)} of {len(p_a["matches"])} last games is BWH'), print("BWH winrate for last matches: " + str([_[1] for _ in BWH].count(True) / len(BWH) * 100) + "%")))(p_a["user"].pop("guild"), [[_["map"]["id"], _["win"]] for _ in p_a["matches"] if _["game"] == "BWH"]))(__import__("requests").get("https://api.vime.world/user/" + str(__import__("requests").get('https://api.vime.world/user/name/' + input("Nickname\n>")).json()[0]["id"]) + "/matches?count=50").json())

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
  • Сейчас на странице   0 пользователей

    • Нет пользователей, просматривающих эту страницу.
×
×
  • Создать...