Код:

#include <GUIConstantsEx.au3>
#include <EditConstants.au3>
;#include <Array.au3>
Global $phone, $pass
Global $CTRL_btn0 = -1, $CTRL_btn1 = -1
Global $hModem_GUI, $hInet_GUI
$hMain_GUI = GUICreate("Спосіб підключення...", 265, 78)
$modem = GUICtrlCreateButton("Підключення через модем Інтертелеком", 8, 8, 250, 30)
$inet = GUICtrlCreateButton("Інший тип підключення", 8, 40, 250, 30)
GUISetState(@SW_SHOW)
While 1
$aMsg = GUIGetMsg(1)
Switch $aMsg[0]
Case $modem ; Підключення через модем
_Modem_GUI()
Case $inet ; Інший тип підключення
_Inet_GUI()
Case $CTRL_btn0
$oHTTP = ObjCreate("WinHttp.WinHttpRequest.5.1")
$oHTTP.Open("POST", "https://assa.intertelecom.ua/ru/login")
$oHTTP.setTimeouts(5000, 5000, 15000, 15000)
$oHTTP.SetRequestHeader("Accept", "*/*")
$oHTTP.SetRequestHeader("Accept-Language", "ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3")
$oHTTP.SetRequestHeader("Referer", "https://assa.intertelecom.ua/ru/statistic")
$oHTTP.SetRequestHeader("Content-Type", "application/x-www-form-urlencoded")
$oHTTP.SetRequestHeader("User-Agent", "Mozilla/5.0 (Windows NT 5.1; rv:2.0.1) Gecko/20100101 Firefox/4.0.1")
$oHTTP.SetRequestHeader("Host", "assa.intertelecom.ua")
$oHTTP.SetRequestHeader("Proxy-Connection", "Keep-alive")
$oHTTP.Send("phone=" & GUICtrlRead($phone) & "&pass=" & GUICtrlRead($pass))
$oHTTP.WaitForResponse
; отримуємо код сторінки коли ми вже авторизувались
$oHTTP.Open("GET", "https://assa.intertelecom.ua/ru/statistic")
$oHTTP.Send()
$oHTTP.WaitForResponse
; пошук необхідних змінних для програми
$sText = $oHTTP.ResponseText
$aTemp = StringRegExp($sText, '(?s)color:.*?;">\s*(.*?)\s*<', 3)
Dim $aResult[UBound($aTemp)]
$j = -1
For $i = 0 To UBound($aTemp) - 1
If $aTemp[$i] Then
$j += 1
$aResult[$j] = $aTemp[$i]
EndIf
Next
ReDim $aResult[$j + 1]
;_ArrayDisplay($aResult)
; виведення інформації у вікно програми
$CTRL_lbl0 = GUICtrlCreateLabel($aResult[0], -90, -375, 140, 20)
$CTRL_lbl1 = GUICtrlCreateLabel($aResult[1], -140, 0, 140, 20)
$CTRL_lbl2 = GUICtrlCreateLabel($aResult[2], -140, 0, 140, 20)
$CTRL_lbl3 = GUICtrlCreateLabel($aResult[3], -140, 0, 140, 20)
$CTRL_lbl4 = GUICtrlCreateLabel($aResult[4], -140, 0, 140, 20)
$CTRL_lbl5 = GUICtrlCreateLabel($aResult[5], -140, 0, 140, 20)
$CTRL_lbl6 = GUICtrlCreateLabel($aResult[6], -140, 0, 140, 20)
$CTRL_lbl7 = GUICtrlCreateLabel($aResult[7], -140, 0, 140, 20)
$CTRL_lbl8 = GUICtrlCreateLabel($aResult[8], -140, 0, 140, 20)
$CTRL_lbl9 = GUICtrlCreateLabel($aResult[9], -140, 0, 140, 20)
$CTRL_lbl10 = GUICtrlCreateLabel($aResult[10], -140, 0, 140, 20)
$CTRL_lbl11 = GUICtrlCreateLabel($aResult[11], -140, 0, 140, 20)
$CTRL_lbl12 = GUICtrlCreateLabel($aResult[12], -140, 0, 140, 20)
$CTRL_lbl13 = GUICtrlCreateLabel($aResult[13], -140, 0, 140, 20)
$CTRL_lbl14 = GUICtrlCreateLabel($aResult[14], -140, 0, 140, 20)
$CTRL_lbl15 = GUICtrlCreateLabel($aResult[15], -140, 0, 140, 20)
$CTRL_lbl16 = GUICtrlCreateLabel($aResult[17], -140, 0, 140, 20)
; вихід якщо була нажата кнопка "Закрити"
Case $CTRL_btn1, $GUI_EVENT_CLOSE
Switch $aMsg[1]
Case $hModem_GUI, $hInet_GUI
;Кнопка закрытия нажата в одном из окон (modem / inet)
GUISetState(@SW_ENABLE, $hMain_GUI)
GUIDelete($aMsg[1])
Case Else
MsgBox(0, "Вихід з програми", "Закриття...", 0, $hMain_GUI)
; вихід якщо була нажата кнопка "Закрити" в вікні програми
ExitLoop
EndSwitch
EndSwitch
WEnd
Func _Modem_GUI()
; створення вікна програми та візуальних елементів
GUISetState(@SW_DISABLE, $hMain_GUI)
$hModem_GUI = GUICreate("Стан рахунку абонента Інтертелеком", 350, 510, -1, -1, -1, -1, $hMain_GUI)
;Opt("GUICoordMode", 2)
GUICtrlCreateLabel("Номер:", 30, 30, 40)
GUICtrlCreateLabel("Пароль:", 90, -1, 40)
$phone = GUICtrlCreateInput("", -125, -25, 80, 20)
$pass = GUICtrlCreateInput("", 50, -20, 80, 20, $ES_PASSWORD)
GUISetState()
GUICtrlCreateLabel("Особовий рахунок.............................:", -270, 10, 190)
GUICtrlCreateLabel("Абонент..............................................:", -190, 0, 190)
GUICtrlCreateLabel("Номер.................................................:", -190, 0, 190)
GUICtrlCreateLabel("Стан....................................................:", -190, 0, 190)
GUICtrlCreateLabel("Пакет..................................................:", -190, 0, 190)
GUICtrlCreateLabel("Додаткова угода...............................:", -190, 0, 190)
GUICtrlCreateLabel("Дата підключення..............................:", -190, 0, 190)
GUICtrlCreateLabel("Абонентський стаж...........................:", -190, 0, 190)
GUICtrlCreateLabel("Лояльний стаж..................................:", -190, 0, 190)
GUICtrlCreateLabel("E-mail...................................................:", -190, 0, 190)
GUICtrlCreateLabel("- (грн.)..................................................:", -190, 0, 190)
GUICtrlCreateLabel("Сальдо................................................:", -190, 0, 190)
GUICtrlCreateLabel("Передплачені послуги на місяць......:", -190, 0, 190)
GUICtrlCreateLabel("Неактивовані бонуси (з 094).............:", -190, 0, 190)
GUICtrlCreateLabel("- (МБ)....................................................:", -190, 0, 190)
GUICtrlCreateLabel("Трафік (Отримано+Передано)...........:", -190, 0, 190)
GUICtrlCreateLabel("Тип підключення)................................:", -190, 0, 190)
GUICtrlCreateLabel("Спосіб авторизації..............................:", -190, 0, 190)
GUICtrlCreateLabel("Трафік (Мб)..........................................:", -190, 0, 190)
GUICtrlCreateLabel("IP- адреса на даний момент..............:", -190, 0, 190)
GUICtrlCreateLabel("Пакетний трафік.................................:", -190, 0, 190)
GUICtrlCreateLabel("Версія 1.0 (10.06.2011 р.)", -90, -470, 130)
; кнопки
$CTRL_btn0 = GUICtrlCreateButton("Отримати дані", -180, 450, 100, 25)
$CTRL_btn1 = GUICtrlCreateButton("Закрити", 25, -1, 100)
GUISetState()
EndFunc
Func _Inet_GUI()
; створення вікна програми та візуальних елементів
GUISetState(@SW_DISABLE, $hMain_GUI)
$hInet_GUI = GUICreate("Стан рахунку абонента Інтертелеком", 350, 440, -1, -1, -1, -1, $hMain_GUI)
;Opt("GUICoordMode", 2)
GUICtrlCreateLabel("Номер:", 30, 30, 40)
GUICtrlCreateLabel("Пароль:", 90, -1, 40)
$phone = GUICtrlCreateInput("", -125, -25, 80, 20)
$pass = GUICtrlCreateInput("", 50, -20, 80, 20, $ES_PASSWORD)
GUISetState()
GUICtrlCreateLabel("Особовий рахунок.............................:", -270, 10, 190)
GUICtrlCreateLabel("Абонент..............................................:", -190, 0, 190)
GUICtrlCreateLabel("Номер.................................................:", -190, 0, 190)
GUICtrlCreateLabel("Стан....................................................:", -190, 0, 190)
GUICtrlCreateLabel("Пакет..................................................:", -190, 0, 190)
GUICtrlCreateLabel("Додаткова угода...............................:", -190, 0, 190)
GUICtrlCreateLabel("Дата підключення..............................:", -190, 0, 190)
GUICtrlCreateLabel("Абонентський стаж...........................:", -190, 0, 190)
GUICtrlCreateLabel("Лояльний стаж..................................:", -190, 0, 190)
GUICtrlCreateLabel("E-mail...................................................:", -190, 0, 190)
GUICtrlCreateLabel("- (грн.)..................................................:", -190, 0, 190)
GUICtrlCreateLabel("Сальдо................................................:", -190, 0, 190)
GUICtrlCreateLabel("Передплачені послуги на місяць......:", -190, 0, 190)
GUICtrlCreateLabel("Неактивовані бонуси (з 094).............:", -190, 0, 190)
GUICtrlCreateLabel("- (МБ)....................................................:", -190, 0, 190)
GUICtrlCreateLabel("Трафік (Отримано+Передано)...........:", -190, 0, 190)
GUICtrlCreateLabel("Пакетний трафік.................................:", -190, 0, 190)
GUICtrlCreateLabel("Версія 1.0 (10.06.2011 р.)", -90, -390, 130)
; кнопки
$CTRL_btn0 = GUICtrlCreateButton("Отримати дані", -180, 380, 100, 25)
$CTRL_btn1 = GUICtrlCreateButton("Закрити", 25, -1, 100)
GUISetState()
EndFunc