Что нового

Выбор radio в IE

Isn

Новичок
Сообщения
119
Репутация
3
Доброго времени суток форумчане пишу скрипт автозаполения формы IE но стокнулся с проблемой не получается выбрать radio

Ссылка:
https://rosreestr.ru/wps/portal/p/cc_ib_state_services/cc_ib_GKU/cc_ib_electronic_state_services_GKU/cc_ib_GKU_service_nn

Варианты которые пробывал:
1.
Код:
_IEFormElementRadioSelect ($oForm, 4, "requestsGZKRealtyDocument.requestsGZKRealty.requestGZKRealty.declarants.declarantArray[0].delivery.kindDelivery", 1, "byIndex")

2.
Код:
_IEFormElementRadioSelect ($oForm, "785001000000", "requestsGZKRealtyDocument.requestsGZKRealty.requestGZKRealty.declarants.declarantArray[0].delivery.kindDelivery", 1, "byValue")
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
Isn,
Можно примерно так попробовать сделать.
Код:
#include <IE.au3>
;без проверок на ошибки
Local $sUrl = 'https://rosreestr.ru/wps/portal/p/cc_ib_state_services/cc_ib_GKU/cc_ib_electronic_state_services_GKU/cc_ib_GKU_service_nn', _
		$aRadioValue[8][2] = [[0],['002001002000', 'здание'],['002001004000', 'сооружение'],['002001003000', 'помещение'], _
		['002001005000', 'объект незавершенного строительства'],['785001000000', 'В виде бумажного документа в органе кадастрового учета'], _
		['785004000000', 'В виде ссылки на электронный документ'],['785002000000', 'В виде бумажного документа почтовым отправлением ']], _
		$aRadioName[2] = ['requestsGZKRealtyDocument.requestsGZKRealty.requestGZKRealty.object.realty.realtyObjectArray[0].objKind', _
		'requestsGZKRealtyDocument.requestsGZKRealty.requestGZKRealty.declarants.declarantArray[0].delivery.kindDelivery']

_IEErrorHandlerRegister()

$oIE = _IECreate($sUrl)
;1
ConsoleWrite('First:' & @LF)
$oInputs = _IETagNameGetCollection($oIE, 'input')
For $oInput In $oInputs
	If $oInput.type == 'radio' Then
		$aRadioValue[0][0] += 1
		If $oInput.value == $aRadioValue[$aRadioValue[0][0]][0] Then
			ConsoleWrite($aRadioValue[0][0] & @TAB & $aRadioValue[$aRadioValue[0][0]][1] & @TAB & $oInput.id & @TAB & $oInput.name & @TAB & $oInput.value & @TAB & $oInput.checked & @LF)
			If $oInput.checked Then
				$oInput.checked = False
			Else
				$oInput.checked = True
			EndIf
			Sleep(1000)
		EndIf
	EndIf
Next
Sleep(1000)
ConsoleWrite('Second:' & @LF)
For $i = 0 To 3
	$oRadio = _IEGetObjByName($oIE, $aRadioName[0], $i)
	ConsoleWrite($oRadio.id & @TAB & $oRadio.name & @TAB & $oRadio.value & @TAB & $oRadio.checked & @LF)
	If $oRadio.checked Then
		$oRadio.checked = False
	Else
		$oRadio.checked = True
	EndIf
	Sleep(1000)
Next
For $i = 0 To 2
	$oRadio = _IEGetObjByName($oIE, $aRadioName[1], $i)
	ConsoleWrite($oRadio.id & @TAB & $oRadio.name & @TAB & $oRadio.value & @TAB & $oRadio.checked & @LF)
	If $oRadio.checked Then
		$oRadio.checked = False
	Else
		$oRadio.checked = True
	EndIf
	Sleep(1000)
Next
 
Автор
Isn

Isn

Новичок
Сообщения
119
Репутация
3
Спасибо что перенесли в соответствующий раздел, в предь буду создавать темы в соответствующих разделах.

Спс madmasles
Использовав твой пример сделал так:
Код:
$oRadio = _IEGetObjByName($oIE, 'requestsGZKRealtyDocument.requestsGZKRealty.requestGZKRealty.declarants.declarantArray[0].delivery.kindDelivery')
$oRadio.checked = True
 
Верх