Redline
AutoIT Гуру
- Сообщения
- 506
- Репутация
- 375
Имеется сайт video.yandex.ru
Пытаюсь получить все ссылки на видео через WinHTTP, но он их не видит, возможно все дело в фреймах.
Пример на WinHTTP (нерабочий) - выводит все "вменяемые" ссылки
Пример на _IE функциях, вполне рабочий - выводит только ссылки на youtube
Существует ли решение?
Пытаюсь получить все ссылки на видео через WinHTTP, но он их не видит, возможно все дело в фреймах.
Пример на WinHTTP (нерабочий) - выводит все "вменяемые" ссылки
Код:
#include <Array.au3>
$sUrl = 'http://video.yandex.ru'
Global $oHTTP = ObjCreate('WinHttp.WinHttpRequest.5.1')
$oHTTP.Open('GET', $sUrl, False)
$oHTTP.Send('')
$oHTTP.WaitForResponse
$sHTML = $oHTTP.responseText
$aLinks = StringRegExp($sHTML, '(?si)<a.*?href="(http://.*?)".*?/a>', 3)
_ArrayDisplay($aLinks)
Пример на _IE функциях, вполне рабочий - выводит только ссылки на youtube
Код:
#include <Array.au3>
#include <IE.au3>
$oIE = _IECreate('http://video.yandex.ru', 0, 1)
Sleep(1500)
$oLinks = _IELinkGetCollection($oIE)
$j = -1
Dim $aLinks[1][2]
For $oLink In $oLinks
If StringInStr($oLink.href, 'youtube.com/') Then
$j += 1
ReDim $aLinks[$j + 1][2]
$aLinks[$j][0] = $oLink.innertext
$aLinks[$j][1] = $oLink.href
EndIf
Next
_ArrayDisplay($aLinks)
Существует ли решение?