Что нового

[Сеть, интернет] Интернет авторизация

Arei

Скриптер
Сообщения
938
Репутация
115
Здравствуйте,уважаемые форумчане и модераторы и админы подскажите пожалуйста можно реализовать такое

Человек вводит в поле текст и этот текст с поля попадает на определённый сайт и нажималась кнопка Отправить (которая на сайте )

Подскажите пожалуйста советом или примером.

Заранее спасибо.
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
Arei [?]
...подскажите пожалуйста можно реализовать такоеЧеловек вводит в поле текст и этот текст с поля попадает на определённый сайт и нажималась кнопка Отправить (которая на сайте )
Можно:
Код:
#include <IE.au3>
Dim $sDataSend = ""
$sDataSend = InputBox("Отправка данных на сайт", "Введите данные", "Autoit", "", "",100)
$oIE = _IECreate("http://ya.ru") ; запускаем IE
$oForm = _IEFormGetCollection($oIE, 0) ; обращаемся к форме по индексу
$oElement = _IETagNameGetCollection($oForm, "input", 0) ; обращаемся к элементу INPUT по индексу
_IEFormElementSetValue($oElement, $sDataSend) ; вставляем данные в элемент INPUT формы БЕЗ ПРОВЕРКИ!!!
_IEFormSubmit($oForm,0) ; отправляем данные формы на сайте
Sleep(3000)
If _IEQuit($oIE) Then Exit; закрываем IE и выходим из программы
 
Автор
A

Arei

Скриптер
Сообщения
938
Репутация
115
Спасибо за ответы, можете подсказать что надо сделать что бы узнать форму сайта?
 

axlwor

Скриптер
Сообщения
657
Репутация
147
опиши задачу полностью. может тебе и скрипт то не нужен?
читаем хелп по командам
Код:
_IEFormGetObjByName()
_IEFormElementSetValue()

ну и все что рядом с ними. примеры по ним очень информативны
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
Arei [?]
можете подсказать что надо сделать что бы узнать форму сайта?
Объекты имеют свойства, name, id и наконец индекс (порядковый номер в коллекции)

Индексы можно посмотреть так:
Код:
OnAutoItExitRegister("_Exit")
Dim $i = 0, $ii, $sWord
$oIE = _IECreate("http://mail.ru")
$oForms = _IEFormGetCollection($oIE)
$FormIndex = @extended
MsgBox(64, "На сайте: " & _IEPropertyGet($oIE,"locationurl"), "Вего форм: " & $FormIndex)
For $oForm In $oForms
	MsgBox(64,"Форма: " & $i + 1, "Index: " & $i)
	$oElements = _IEFormElementGetCollection($oForm)
	$ElemIndex = @extended
	MsgBox(64, "Форма: " & $i + 1 , "Елементов: " & $ElemIndex & $sWord)
	$ii = 0
		For $oElement In $oElements
			MsgBox(0,"Елемент: " & $ii + 1 , "Index: " & $ii)
			$ii += 1
		Next
	$i += 1
Next

Func _Exit()
	_IEQuit($oIE)
	Exit
EndFunc
 
Автор
A

Arei

Скриптер
Сообщения
938
Репутация
115
У меня почему то выдает ошибку когда пытаюсь запустить скрипт. Просто хочу сделать сбор бонусов для wm вот можете сайт посмотреть и показать пример, а дальше я сам.Заранее спасибо.

Вот сайт
http://freewmr.ru/


Добавлено:
Сообщение автоматически объединено:

Помогите пожалуйста.Заранее спасибо.
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
Arei [?]
У меня почему то выдает ошибку

Нужно в самом начале (в скрипте) поставить!
Код:
#include <IE.au3>


Просто хочу сделать сбор бонусов для wm вот можете сайт посмотреть и показать пример, а дальше я сам
Могу. Но почитать для начала справку, вам всё же придётся! :whistle:

Код:
#include <IE.au3>
OnAutoItExitRegister("_Exit")
$sDataSend = InputBox("Отправка данных на сайт", "Введите данные", "", "", "",100)
$oIE = _IECreate("http://freewmr.ru/")
$oForm = _IEFormGetCollection($oIE, 0)
$oText = _IEFormElementGetCollection($oForm,3)
_IEFormElementSetValue($oText, $sDataSend)
    Sleep(1000) ; маленький совет! присваивайте кнопке начальное значение (до старта таймера) NULL иначе оставьте эту задержку
    Do
        Sleep(100)
        $oSubmit = _IEFormElementGetCollection($oForm,4)
    Until StringStripWS(_IEFormElementGetValue($oSubmit), 3) = "Бабло!"
_IEAction($oSubmit,"click")
Func _Exit()
;~     _IEQuit($oIE)
    Exit
EndFunc
 
Автор
A

Arei

Скриптер
Сообщения
938
Репутация
115
Спасибо буду разбираться, а интересно будет а IE можно скрыть (сделать на это время невидимым)
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
Arei [?]
IE можно скрыть (сделать на это время невидимым)
Да.
Код:
$oIE = _IECreate("http://freewmr.ru/",0,0)



Добавлено:
Сообщение автоматически объединено:

Но хочу сразу предупредить, если будите экспериментировать с IE в скрытом режиме, не забывайте проверять память на наличие IE, который в случае неудачи так и остаётся висеть ;D
 
Автор
A

Arei

Скриптер
Сообщения
938
Репутация
115
Спасибо и ещё 1 вопрос можно у меня когда я ставлю IE и он становится невидимым и программа где вводится данные- текст то же становится невидимым , Вопрос заключается в том что можно ли сделать IE невидимым, но основная программа была видимой .Заранее спасибо
 
Автор
A

Arei

Скриптер
Сообщения
938
Репутация
115
Подскажите, а можно сделать ли если страница полностью загрузилась, то автоматически переходит на другую страницу и так до бесконечности.Такое возможно сделать.
 

joiner

Модератор
Локальный модератор
Сообщения
3,556
Репутация
628
Arei сказал(а):
основная программа была видимой .
я так понял ты хочешь сделать форму для отправки текста? смотри раздел справки по GUI. посмотри вот эту тему http://autoit-script.ru/index.php/topic,304.0.html. там есть пример оформления программы для отправки сообщений. если нужно, могу скинуть полный исходник по отправке сообщений на определенный сайт. в нем все - от оформления до функций отправки.
 
Автор
A

Arei

Скриптер
Сообщения
938
Репутация
115
Скинь в личку если не трудно.Заранее спасибо.
 

joiner

Модератор
Локальный модератор
Сообщения
3,556
Репутация
628
Arei сказал(а):
Скинь в личку если не трудно.Заранее спасибо.
лучше здесь выложу. скрипт , правда, до ума не доведен. но основное работает. естественно ты должен учесть что формы ИЕ в твоем случае будут другие.
в написании скрипта помогли советами участники форума. за что большое спасибо.
 
Верх