Что нового

[Сеть, интернет] Авторизация и редактирование файла на Ucoz'e

AnyMak

Новичок
Сообщения
18
Репутация
3
Версия AutoIt: 3+ 3.

Описание: Авторизация и редактирование файла на Ucoz-Сайте

Примечания: Можно любыми способами

Здравствуйте уважаемые пользователи, я понимаю, что возможно такая тема уже была, но я ничего не смогла найти в поиске...
Вообщем нужно чтобы Autoit скрипт сначала авторизовался на Ucoz-сайте, потом создавал файл (если его еще нет), и потом записывал в него любой текст (я подставлю что мне нужно)
Если тема не правильно оформлена - прошу исправить или написать чтобы я сама исправила...
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,320
AnyMak,
Если через IE, то могу попробовать Вам помочь. Но для этого мне нужны адрес сайта, тестовые логин - пароль (можно в ЛС) и далее, по Вашему тексту.

PS
Если это Ваш сайт, то, наверное, через FTP доступ есть.

Авторизироваться у меня получилось так. (Если у Вас IE9, то поставьте его в режим совместимости).
Код:
#include <IE.au3>

Global $oIE, $sLogin = 'Ваш Login', $sPassword = 'Ваш Password'

_Login_IE($oIE, $sLogin, $sPassword)
If @error Then
	MsgBox(16, 'Error', '_Login_IE :(')
Else
	MsgBox(64, 'Info', 'OK :)')
EndIf

Func _Login_IE(ByRef $o_IE, $s_Login, $s_Password)
	Local $s_Url = 'http://mortu32.do.am/', $o_Forms, $o_Form_Lg, $o_Login, $o_Password, _
			$o_Submit, $i_Error = 1, $s_Text, $i_Start

	$o_IE = _IECreate($s_Url)
	If @error Then Return SetError(1)
	For $i = 1 To 1
		$s_Text = _IEBodyReadText($o_IE)
		If @error Then ExitLoop
		If StringInStr($s_Text, 'Выход') Then Return
		$s_Text = ''
		$o_Forms = _IEFormGetCollection($o_IE)
		If @error Then ExitLoop
		For $o_Form In $o_Forms
			If StringInStr($o_Form.id, 'frmLg') Then
				$o_Form_Lg = $o_Form
				ExitLoop
			EndIf
		Next
		If Not IsObj($o_Form_Lg) Then ExitLoop
		$o_Login = _IEFormElementGetObjByName($o_Form_Lg, 'user')
		If @error Then ExitLoop
		$o_Password = _IEFormElementGetObjByName($o_Form_Lg, 'password')
		If @error Then ExitLoop
		_IEFormElementSetValue($o_Login, $s_Login)
		If @error Then ExitLoop
		_IEFormElementSetValue($o_Password, $s_Password)
		If @error Then ExitLoop
		$o_Submit = _IEFormElementGetObjByName($o_Form_Lg, 'sbm')
		If @error Then ExitLoop
		_IEAction($o_Submit, 'click')
		If @error Then ExitLoop
		_IELoadWait($o_IE)
		If @error Then ExitLoop
		$i_Error = 0
	Next
	If $i_Error Then
		_IEQuit($o_IE)
		$o_IE = 0
		Return SetError(1)
	EndIf
	$i_Start = TimerInit()
	While TimerDiff($i_Start) <= 20000
		Sleep(1000)
		$s_Text = _IEBodyReadText($o_IE)
		If @error Then ContinueLoop
		$i_Error = StringInStr($s_Text, 'Выход')
		If $i_Error Then ExitLoop
	WEnd
	If Not $i_Error Then
		_IEQuit($o_IE)
		$o_IE = 0
		Return SetError(1)
	EndIf
	Return
EndFunc   ;==>_Login_IE
Что дальше надо делать?
 
Автор
A

AnyMak

Новичок
Сообщения
18
Репутация
3
Теперь нужно написать файл на сайте (любое имя)
Ссылка должна быть так: "http://mortu32.do.am/tmpls/?a=fm;n=1"
Если авторизация есть, то там доступ будет открыт...
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,320
AnyMak,
По этой ссылке закачиваются - удаляются заранее подготовленные файлы. Что конкретно надо сделать?

Я изменил код.
 
Верх