Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <IE.au3>
- #include <String.au3>
- #include <Array.au3>
- #include <Date.au3>
- #include <File.au3>
- #include <Inet.au3>
- #include <DDEML.au3>
- #include <DDEMLClient.au3>
- #include <GUIConstantsEx.au3>
- #include <WindowsConstants.au3>
- #include <StaticConstants.au3>
- #include <ButtonConstants.au3>
- #include <EditConstants.au3>
- $sett_file1 = FileOpen(@ScriptDir & '\settings.txt', 0)
- $str_login = FileReadLine($sett_file1, 3)
- $str_login_m = _StringBetween($str_login, '[login_akk=]', '[/login_akk]')
- $str_login_ok = $str_login_m[0]
- $str_pass = FileReadLine($sett_file1, 4)
- $str_pass_m2 = _StringBetween($str_pass, '[pass_akk=]', '[/pass_akk]')
- $str_pass_ok = $str_pass_m2[0]
- FileClose($sett_file1)
- $osn_gui = GUICreate("WACT", 200, 180, -1, -1)
- GUICtrlCreateLabel("Логин: ", 10, 10)
- $log = GUICtrlCreateInput($str_login_ok, 80, 6, 110, 22, $WS_EX_CLIENTEDGE)
- GUICtrlCreateLabel("Пароль: ", 10, 40)
- $pass = GUICtrlCreateInput($str_pass_ok, 80, 36, 110, 22, $WS_EX_CLIENTEDGE) ;$WS_EX_DLGMODALFRAME
- $iRadio_1 = GUICtrlCreateRadio("Все подряд", 20, 70, 100, 20)
- $iRadio_2 = GUICtrlCreateRadio("По списку", 100, 70, 100, 20)
- GUICtrlSetState($iRadio_2, $GUI_CHECKED)
- $Button_1 = GUICtrlCreateButton("Войти", 25, 135, 72, 30, $BS_FLAT)
- $Button_no_pass = GUICtrlCreateButton("Я не хочу вводить пароль!", 25, 98, 150, 24, $BS_MULTILINE)
- $Button_settings = GUICtrlCreateButton("Настройки", 101, 135, 72, 30, $BS_FLAT)
- GUISetState(@SW_SHOW)
- While 1
- Switch GUIGetMsg()
- Case $GUI_EVENT_CLOSE
- Exit
- Case $Button_no_pass
- MsgBox(64,'','Если Вы по каким-либо причинам не хотите вводить пароль в программу, откройте браузер internet explorer, войдите в нём в свой аккаунт и сверните браузер.')
- Case $Button_1
- If GUICtrlRead ( $iRadio_1 ) = $GUI_CHECKED then
- $type = 1
- ElseIf GUICtrlRead ( $iRadio_2 ) = $GUI_CHECKED then
- $type = 2
- EndIf
- $ipass = '' & GUICtrlRead($pass)
- $ilog = '' & GUICtrlRead($log)
- $all_file_text_s = FileRead (@ScriptDir & "\settings.txt")
- $str_in_log = FileReadLine(@ScriptDir & "\settings.txt", 3)
- $str_in_log2 = FileReadLine(@ScriptDir & "\settings.txt", 4)
- $all_file_text_s_new = StringReplace($all_file_text_s, $str_in_log, "[login_akk=]" & $ilog & "[/login_akk]")
- $all_file_text_s_new2 = StringReplace($all_file_text_s_new, $str_in_log2, "[pass_akk=]" & $ipass & "[/pass_akk]")
- $Filee2 = FileOpen(@ScriptDir & "\settings.txt", 2)
- FileWrite($Filee2, $all_file_text_s_new2)
- FileClose($Filee2)
- GUISetState(@SW_ENABLE, $osn_gui)
- ;GUIDelete($osn_gui)
- ExitLoop
- Case $Button_settings
- $sett_file2 = FileOpen(@ScriptDir & '\settings.txt', 0)
- $str_check_task = FileReadLine($sett_file2, 1)
- $str_check_task_m = _StringBetween($str_check_task, '[check_task=]', '[/check_task]')
- $str_check_task_ok = $str_check_task_m[0]
- $str_text_task = FileReadLine($sett_file2, 5)
- $str_text_task_m = _StringBetween($str_text_task, '[text_task=]', '[/text_task]')
- $str_text_task_ok = $str_text_task_m[0]
- $str_sleep_rekl = FileReadLine($sett_file2, 6)
- $str_sleep_rekl_m = _StringBetween($str_sleep_rekl, '[sleep_rekl=]', '[/sleep_rekl]')
- $str_sleep_rekl_ok = $str_sleep_rekl_m[0]
- FileClose($sett_file2)
- $settings_gui = GUICreate("WACT | Настройки", 260, 210, -1, -1)
- GUICtrlCreateLabel("Первый ID для поиска заданий:", 10, 10)
- $id_vs = GUICtrlCreateInput($str_check_task_ok, 10, 31, 110, 22, $ES_NUMBER, $WS_EX_CLIENTEDGE)
- GUICtrlCreateLabel("Текст, отправляемый в подтверждение:", 10, 60)
- $text_vs = GUICtrlCreateInput($str_text_task_ok, 10, 81, 110, 22, $WS_EX_CLIENTEDGE)
- GUICtrlCreateLabel("Минимальная неактивность", 10, 110)
- GUICtrlCreateLabel("рекламодателя (дней):", 10, 125)
- $s_rekl_vs = GUICtrlCreateInput($str_sleep_rekl_ok, 10, 146, 120, 22, $ES_NUMBER, $WS_EX_CLIENTEDGE)
- $Button_ok_set = GUICtrlCreateButton("Ок", 110, 175, 50, 25, $BS_PUSHLIKE)
- GUISetState(@SW_SHOW)
- While 1
- Switch GUIGetMsg()
- Case $GUI_EVENT_CLOSE
- ExitLoop
- Case $Button_ok_set
- $id_taskk = '' & GUICtrlRead($id_vs)
- $text_task = '' & GUICtrlRead($text_vs)
- $rekl_sleep = '' & GUICtrlRead($s_rekl_vs)
- $all_file_set_task = FileRead (@ScriptDir & "\settings.txt")
- $str_check_task = FileReadLine(@ScriptDir & "\settings.txt", 1)
- $str_text_task = FileReadLine(@ScriptDir & "\settings.txt", 5)
- $str_sleep_rekl = FileReadLine(@ScriptDir & "\settings.txt", 6)
- $all_file_set_task_new = StringReplace($all_file_set_task, $str_check_task, "[check_task=]" & $id_taskk & "[/check_task]")
- $all_file_set_task_new2 = StringReplace($all_file_set_task_new, $str_text_task, "[text_task=]" & $text_task & "[/text_task]")
- $all_file_set_task_new3 = StringReplace($all_file_set_task_new2, $str_sleep_rekl, "[sleep_rekl=]" & $rekl_sleep & "[/sleep_rekl]")
- $Filee3 = FileOpen(@ScriptDir & "\settings.txt", 2)
- FileWrite($Filee3, $all_file_set_task_new3)
- FileClose($Filee3)
- MsgBox(0,'','Сохранено')
- ExitLoop
- EndSwitch
- WEnd
- GUISetState(@SW_ENABLE, $settings_gui)
- GUIDelete($settings_gui)
- EndSwitch
- WEnd
- $sett_file = FileOpen(@ScriptDir & '\settings.txt', 0)
- $sett_file_f = FileReadLine($sett_file, 5)
- $sett_file_m = _StringBetween($sett_file_f, '[text_task=]', '[/text_task]')
- $text_task_ok = $sett_file_m[0]
- $sett_file_f2 = FileReadLine($sett_file, 6)
- $sett_file_m2 = _StringBetween($sett_file_f2, '[sleep_rekl=]', '[/sleep_rekl]')
- $r_day = $sett_file_m2[0]
- FileClose($sett_file)
- Func _FileDeleteLine($sFile, $iLine)
- $hFile = FileOpen($sFile, 0)
- If $hFile = -1 Then Return SetError(1, 0, 0)
- $sFileContent = ""
- $aFileContent = StringSplit(StringStripCR(FileRead($hFile)), @LF)
- FileClose($hFile)
- For $i = 1 To $aFileContent[0]
- If $i <> $iLine Then $sFileContent &= $aFileContent[$i] & @CRLF
- Next
- $hFile = FileOpen($sFile, 2)
- If $hFile = -1 Then Return SetError(2, 0, 0)
- FileWrite($hFile, StringTrimRight($sFileContent, 2))
- Return FileClose($hFile)
- EndFunc
- ;---------------------------------------------------------------------------------------------------------------------------------------------
- ;_FileDeleteLine(@ScriptDir & '\now_id.txt', 4)
- If $type = 1 Then
- $id_task_file = FileOpen(@ScriptDir & '\settings.txt', 0)
- $id_task_f = FileReadLine($id_task_file, 1)
- $id_task_m = _StringBetween($id_task_f, '[check_task=]', '[/check_task]')
- $id_task = $id_task_m[0]
- $oIE = _IECreate("http://wmmail.ru/",0,1,0)
- FileClose($id_task_file)
- While 1
- _IENavigate ($oIE, "http://wmmail.ru//index.php?cf=uzd-readtask&zdid=" & $id_task)
- _IELoadWait($oIE)
- ;Sleep(50)
- $sText = _IEBodyReadText ($oIE)
- While 1
- $sText = _IEBodyReadText ($oIE)
- If StringInStr($sText, 'московскому') And StringInStr($sText, 'тех') And StringInStr($sText, 'работы') And StringInStr($sText, '4:20') Then
- sleep(5000)
- _IENavigate ($oIE, "http://wmmail.ru/")
- _IELoadWait($oIE)
- Else
- ExitLoop
- EndIf
- WEnd
- If StringInStr($sText, "Оплачиваемое задание") or StringInStr($sText, "Выбранное Вами задание не активно") Then
- If StringInStr($sText, "Оплачиваемое задание") Then
- If Not StringInStr($sText, "Указание контрольного слова") And StringInStr($sText, "Вы уже выполнили это задание") Then
- $task_list_file = FileOpen(@ScriptDir & '\task_list.txt', 1)
- FileWrite($task_list_file, "~" & $id_task & "~" & @CRLF)
- FileClose($task_list_file)
- $Inputs = _IETagNameGetCollection($oIE, 'input',0)
- $id_rekl = $Inputs.value
- $sHTML = _INetGetSource("http://wmmail.ru//index.php?cf=wall-viewuser&uid=" & $id_rekl) ; получает html код стр без её загрузки.
- $table_data = _StringBetween($sHtml, 'Дата последней активности:', '</font>')
- $data = _StringBetween($table_data[0], '>', ' ')
- $data_active = $data[0] ; дата последней активности
- $data_now = _NowDate ()
- $act_year1 = StringSplit($data_active, '.')
- $day_akk_act = 365*Int($act_year1[3])+30*int($act_year1[2])+int($act_year1[1])
- $now_year1 = StringSplit($data_now, '.')
- $day_now = 365*Int($now_year1[3])+30*Int($now_year1[2])+Int($now_year1[1])
- $r = $day_now - $day_akk_act
- if $r >= $r_day Then
- $Inputs = _IETagNameGetCollection($oIE, 'input')
- For $Input In $Inputs
- If StringInStr($Input.value, "Начать выполнение задания") Then
- _IEAction($Input, 'click')
- ExitLoop
- EndIf
- Next
- _IELoadWait($oIE)
- sleep(500)
- _DDEMLClient_Execute("IExplore", "WWW_Exit", "WWW_Exit")
- sleep(500)
- sleep(100)
- $Inputs2 = _IETagNameGetCollection($oIE, 'input')
- For $Input2 In $Inputs2
- If StringInStr($Input2.value, "Подтвердить выполнение задания") Then
- _IEAction($Input2, 'click')
- ExitLoop
- EndIf
- Next
- _IELoadWait($oIE)
- $oForm5 = _IEGetObjById ($oIE, "zdtext")
- _IEFormElementSetValue ($oForm5, "" & $text_task_ok)
- $Inputs3 = _IETagNameGetCollection($oIE, 'input')
- For $Input3 In $Inputs3
- If StringInStr($Input3.value, "Отправить") Then
- _IEAction($Input3, 'click')
- ExitLoop
- EndIf
- Next
- _IELoadWait($oIE)
- EndIf
- EndIf
- EndIf
- EndIf
- $id_task += 1
- $all_file_text = FileRead (@ScriptDir & "\settings.txt")
- $str_in_id = FileReadLine(@ScriptDir & "\settings.txt", 1)
- $all_file_text_new = StringReplace($all_file_text, $str_in_id, "[check_task=]" & $id_task & "[/check_task]")
- $File2 = FileOpen(@ScriptDir & "\settings.txt", 2)
- FileWrite($File2, $all_file_text_new)
- FileClose($File2)
- WEnd
- ElseIf $type = 2 Then
- $oIE = _IECreate("http://wmmail.ru/",0,1,0)
- $num_task_file = FileOpen(@ScriptDir & '\settings.txt', 0)
- $num_task_f = FileReadLine($num_task_file, 1)
- $num_task_m = _StringBetween($num_task_f, '[check_list=]', '[/check_list]')
- $num_task = $num_task_m[0]
- FileClose($nun_task_file)
- $while_line = 1
- $str_file = _FileCountLines(@ScriptDir & '\task_list.txt')
- While $while_line <= $str_file
- $id_task = FileReadLine(@ScriptDir & '\task_list.txt', $while_line)
- _IENavigate ($oIE, "http://wmmail.ru//index.php?cf=uzd-readtask&zdid=" & $id_task)
- $sText = _IEBodyReadText ($oIE)
- If StringInStr($sText, "Оплачиваемое задание") Then
- If Not StringInStr($sText, "Выбранное Вами задание не активно") Then
- If Not StringInStr($sText, "Указание контрольного слова") And StringInStr($sText, "Вы уже выполнили это задание") Then
- $Inputs = _IETagNameGetCollection($oIE, 'input',0)
- $id_rekl = $Inputs.value
- $sHTML = _INetGetSource("http://wmmail.ru//index.php?cf=wall-viewuser&uid=" & $id_rekl) ; получает html код стр без её загрузки.
- $table_data = _StringBetween($sHtml, 'Дата последней активности:', '</font>')
- $data = _StringBetween($table_data[0], '>', ' ')
- $data_active = $data[0] ; дата последней активности
- $data_now = _NowDate ()
- $act_year1 = StringSplit($data_active, '.')
- $day_akk_act = 365*Int($act_year1[3])+30*int($act_year1[2])+int($act_year1[1])
- $now_year1 = StringSplit($data_now, '.')
- $day_now = 365*Int($now_year1[3])+30*Int($now_year1[2])+Int($now_year1[1])
- $r = $day_now - $day_akk_act
- if $r >= $r_day Then
- $Inputs = _IETagNameGetCollection($oIE, 'input')
- For $Input In $Inputs
- If StringInStr($Input.value, "Начать выполнение задания") Then
- _IEAction($Input, 'click')
- ExitLoop
- EndIf
- Next
- _IELoadWait($oIE)
- sleep(500)
- _DDEMLClient_Execute("IExplore", "WWW_Exit", "WWW_Exit")
- sleep(500)
- sleep(100)
- $Inputs2 = _IETagNameGetCollection($oIE, 'input')
- For $Input2 In $Inputs2
- If StringInStr($Input2.value, "Подтвердить выполнение задания") Then
- _IEAction($Input2, 'click')
- ExitLoop
- EndIf
- Next
- _IELoadWait($oIE)
- $oForm5 = _IEGetObjById ($oIE, "zdtext")
- _IEFormElementSetValue ($oForm5, "" & $text_task_ok)
- $Inputs3 = _IETagNameGetCollection($oIE, 'input')
- For $Input3 In $Inputs3
- If StringInStr($Input3.value, "Отправить") Then
- _IEAction($Input3, 'click')
- ExitLoop
- EndIf
- Next
- _IELoadWait($oIE)
- EndIf
- EndIf
- EndIf
- Else
- _FileDeleteLine(@ScriptDir & '\task_list.txt', $while_line)
- $while_line -= 1
- $str_file -= 1
- EndIf
- $while_line += 1
- WEnd
- EndIf
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement