Что нового

Помогите перевести условие

Нубокодер

Новичок
Сообщения
75
Репутация
0
Напишите пожалуйста это же условие, но без использования функции IE. С помощью ObjCreate("HTMLFILE"):

Код:
If ( StringInStr ( _IEPropertyGet ( $oCensured, "innertext" ), "попа" )) And ( StringInStr( _IEPropertyGet ( $oCensured, "innertext"), "жопа" )) = 0 Then


Смысл условия: если текст объекта $oCensured содержит строку "попа" и не содержит "жопа" то ...
 
Автор
Нубокодер

Нубокодер

Новичок
Сообщения
75
Репутация
0
Код:
If ( StringInStr ( $oCensured.innertext, "попа" )) And ( StringInStr ( $oCensured.innertext, "жопа" )) = 0 Then
 

firex

AutoIT Гуру
Сообщения
943
Репутация
208
Код:
If StringInStr( $oCensured.innerText, "попа" ) And Not StringInStr( $oCensured.innerText, "жопа" ) Then
 
Автор
Нубокодер

Нубокодер

Новичок
Сообщения
75
Репутация
0
Спасибо, только я уже сам допер)) Еще одна проблемка вскрылась: почему то русские буквы это условие не понимает.( Как быть? Причем с _IEPropertyGet нормально работало.
 

firex

AutoIT Гуру
Сообщения
943
Репутация
208
Нубокодер
Проверьте сам текст:

Код:
ConsoleWrite( $oCensured.innerText & @LF )


Полагаю у вас проблемы с кодировкой.
 
Автор
Нубокодер

Нубокодер

Новичок
Сообщения
75
Репутация
0
Из $oCensured латинские буквы нормально читает, а русские что то типа такого: ???µN???N??µN???? Как исправить?
 

firex

AutoIT Гуру
Сообщения
943
Репутация
208
Нубокодер
Код страницы вероятнее всего вы получаете в бинарном виде, преобразовывайте в текст следующим образом:

Код:
$sHtml = BinaryToString( $bResponse, 4 )
 
Автор
Нубокодер

Нубокодер

Новичок
Сообщения
75
Репутация
0
Код страницы получаю вот так:
Код:
Local $oHTTP = ObjCreate("winhttp.winhttprequest.5.1")
$oHTTP.Open("GET", $url)
$oHTTP.Send()
Local $HTMLSource = $oHTTP.Responsetext

Local $oHTML = ObjCreate("HTMLFILE")
$oHTML.Write($HTMLSource)


Далее несколькими манипуляциями из $oHTML выделяю нужную мне объект-ссылку $oCensured.
 

firex

AutoIT Гуру
Сообщения
943
Репутация
208
Код:
Local $HTMLSource = BinaryToString( $oHTTP.ResponseBody, 4 )


Пробуйте так. Иначе: можно изменить предпочитаемую кодировку в заголовке запроса, пользуйтесь поиском по форуму.
 
Верх