Что нового

Не получается "запрограммировать" кнопки

id.balandin

Новичок
Сообщения
30
Репутация
0
Собственно через CheckBox разобрался как запрашивать номер ОКПО с сайта. Решил сделать интерфейс к этому функционалу, но увы тут немного не понимаю.
Код:
#include <MsgBoxConstants.au3>
#include <IE.au3>
#include <Array.au3>
#include <String.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>

#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Узнай ОКПО", 484, 227, 192, 124)
$ButtonSearch = GUICtrlCreateButton("Поиск", 320, 64, 75, 25)
GUICtrlSetState(-1, $GUI_FOCUS)
$Input1 = GUICtrlCreateInput("", 192, 64, 129, 25, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER))
$Label1 = GUICtrlCreateLabel("Введи ИНН организации:", 64, 64, 133, 25, BitOR($SS_CENTER,$SS_CENTERIMAGE))
$Label2 = GUICtrlCreateLabel("Номер ОКПО:", 128, 104, 75, 25, $SS_CENTERIMAGE)
$Input2 = GUICtrlCreateInput("", 200, 104, 121, 25, BitOR($GUI_SS_DEFAULT_INPUT,$ES_CENTER))
$Button2 = GUICtrlCreateButton("Сброс", 395, 64, 75, 25)
GUICtrlSetState(-1, $GUI_FOCUS)
GUISetState(@SW_SHOW)

#EndRegion ### END Koda GUI section ###

Do
	$nMsg = GUIGetMsg()
	If $msg = $ButtonSearch Then
	   Local $Form1 = $Input1
	   $oIE = _IECreate("http://212.104.73.202/ul/", 0, 0, 1, 1)
	   $oForm = _IEFormGetCollection ($oIE, 0)
       $oInput =_IEGetObjByName($oIE,"p_text")

	   _IEFormElementSetValue ($oInput, $sForm1); вставляем ИНН
       _IEFormSubmit ($oForm)
	   $sText = _IEBodyReadText($oIE); читаем что открылось на странице
	   $array = _StringBetween($sText, "Код ОКПО", "Наименование предприятия"); ищем номер в тексте
	   $string = _ArrayToString($array, @CRLF); х.з.
	   ClipPut($string); 
	   $Input2( ClipGet())
	   _IEQuit($oIE)
EndIf
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit

	EndSwitch
 WEnd

Вообщем видимо проблема в цикле или с переменными?
 

joiner

Модератор
Локальный модератор
Сообщения
3,556
Репутация
628
честно говоря, какая то каша а не код. он не может работать. хотя бы так сделай цикл опроса элементов

Код:
While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
		Case $ButtonSearch
			$oIE = _IECreate("http://212.104.73.202/ul/", 0, 0, 1, 1)
			$oForm = _IEFormGetCollection($oIE, 0)
			$oInput = _IEGetObjByName($oIE, "p_text")
			_IEFormElementSetValue($oInput, GUICtrlRead($Input1)); вставляем ИНН
			_IEFormSubmit($oForm)
			$sText = _IEBodyReadText($oIE); читаем что открылось на странице
			$array = _StringBetween($sText, "Код ОКПО", "Наименование предприятия"); ищем номер в тексте
			$string = _ArrayToString($array, @CRLF); х.з.
			GUICtrlSetData($Input2, $string)
			_IEQuit($oIE)
	EndSwitch
WEnd
 
Автор
id.balandin

id.balandin

Новичок
Сообщения
30
Репутация
0
Согласен, каша, а не код. Я с GUI еще не знаком. ВОт и хотел слепить из двух один. :IL_AutoIt_1:
 

joiner

Модератор
Локальный модератор
Сообщения
3,556
Репутация
628
еще момент, после поиска на сайте открывается страница результата
http://212.104.73.202/ul/forms_search_action10s.asp
поэтому нужно считывать ее.
я тоже делал поиск для своих нужд. вот пример с IE
http://autoit-script.ru/index.php?topic=17609.msg107129#msg107129
 
Автор
id.balandin

id.balandin

Новичок
Сообщения
30
Репутация
0
joiner сказал(а):
еще момент, после поиска на сайте открывается страница результата
http://212.104.73.202/ul/forms_search_action10s.asp
поэтому нужно считывать ее.
я тоже делал поиск для своих нужд. вот пример с IE
http://autoit-script.ru/index.php?topic=17609.msg107129#msg107129
Да вроде получается. Он её и считывает. Или что то не так?
 

joiner

Модератор
Локальный модератор
Сообщения
3,556
Репутация
628
насчет графики окна все просто. в Scite есть возможность вызвать Koda. в этой программе можно составлять свои окна наглядно и потом корректировать.
 
Автор
id.balandin

id.balandin

Новичок
Сообщения
30
Репутация
0
joiner сказал(а):
насчет графики окна все просто. в Scite есть возможность вызвать Koda. в этой программе можно составлять свои окна наглядно и потом корректировать.
Как вызвать в Koda Scite я понял. А вот наоборот как? Извиняюсь за тупизну. Но не нашел...
 

oesoes

xor eax,eax
Сообщения
171
Репутация
9
BAj8aXRexQgTcobikAnBx5JXHTYLcyW86KvsLNFUp5vO8MuqPrvDvHAwN2FVCfbMmhpjSRS4BFRbuU9vg8-cvA==
 

Booster

Новичок
Сообщения
48
Репутация
1
Да, вот и мне теперь стало интересно, как получить данные со страницы с результатами. Ибо, как правильно заметил joiner, результаты выводятся в новой странице с новым адресом. А соответственно Handle команды _IECreate () мы уже не можем использовать.
 
Автор
id.balandin

id.balandin

Новичок
Сообщения
30
Репутация
0
Работает. Для примера вот ИНН 6664067028. Я думаю там на JScript все работает.
innerHTML может быть.
 
Автор
id.balandin

id.balandin

Новичок
Сообщения
30
Репутация
0
Booster сказал(а):
Да, вот и мне теперь стало интересно, как получить данные со страницы с результатами. Ибо результаты выводятся в новой странице с новым адресом. А соответственно Handle команды _IECreate () мы уже не можем использовать.
Тема вновь актуальна.
Хочу запрашивать данные с другого ресурса. И там видимо после отправки запроса, открывается новая страница и с неё нужно считывать.
Вопрос как сделать чтобы при открытии на запрашиваемой страницу бралось значение из Input и вставлялось в нужную часть.
Пример: http://site.143.ru/index.php&inn=6679040011&B1.x=25&B1.y=13&B1=%C8%F1%EA%E0%F2%FC
!Это не работающий сайт, просто напечатал для понимания.!
Ну вот, как подставлять значения в inn=6679040011 ?
ИНН брать нужна из поля Input
 
Верх