INT 21h

Получение информации о виртуальных машинах в облаке из панели управления Селектел

№ 3840 В разделах: Администрирование Программирование от November 9th, 2011,

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

<?
require('simple_html_dom.php');

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://support.selectel.ru/');
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt ($ch, CURLOPT_POSTFIELDS,
    'action_method=GET&user=YOURID&pass=YOURPASSWORD');
curl_setopt ($ch, CURLOPT_COOKIEJAR, 'cookie.txt');
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
$store = curl_exec ($ch);
curl_setopt($ch, CURLOPT_URL, 'https://support.selectel.ru/cloud/vm/');
$content = curl_exec ($ch);
curl_close ($ch); 

$html = new simple_html_dom();
$html->load($content);

$userinfo = $html->find('body script',0);
$vms_o = $html->find('.vm-box');

preg_match_all("/var [a-z_]+ = \{(.*?)\};/",
    $userinfo->innertext,$userinfo_array);

$userinfo=json_decode(str_replace(array("var client_info = ","};"),
    array("","}"),$userinfo_array[0][1]));

echo $userinfo->username.", баланс "; echo ($userinfo->cloud->balance/100). " руб.\n";

foreach($vms_o as $vm_o) {
    $vm_name = $vm_o->find(".vm-name",0);
    $vm_money = $vm_o->find(".vm-money",0);
    echo "Название ".trim($vm_name->innertext)."\n";
    echo "Потрачено за сутки ".trim($vm_money->innertext)." руб.\n\n";
}

?>

Если этот скрипт дополнить другими (например, статистикой из Яндекс.Метрики), то можно получить вполне клевые уведомления о балансе, статистике и трате средств со счета.

Нет комментариев »

Leave a Reply

Your email address will not be published. Required fields are marked *

*

Комментарии

  • 21h: нене ) без меня )
  • Серегй: Не совсем грабить)) если грабить можно и без рации, есть...
  • 21h: магазин грабить собрались? ) не, тут я не помощник ;)
  • Серегй: А что бы мне поймать чужую волну, что мне для этого нужно...
  • 21h: слушать никто не запрещает. нет закона, который запрещает...
  • Серегй: Я хотел узнать могу ли я просто прийти с данной рацией baofeng...
  • 21h: У меня есть только эти 2. По другим ничего не знаю. В интернете...

© Vladimir Smagin, 2005-2017. Копирование материалов без разрешения запрещено.
Яндекс.Метрика