Что нового

[Сеть, интернет] Переход по ссылке, получение генерируемой ссылки и скачивание файла

ivsatel

Продвинутый
Сообщения
319
Репутация
84
Здравствуйте.
Использую AutoIt: v3.3.8.1

Есть адрес http://sourceforge.net/projects/hjt/
С которого хочу скачать файл, но для этого нужно что-бы страничка с генерировала адрес
Адрес в итоге получается http://citylan.dl.sourceforge.net/project/hjt/2.0.4/HijackThis.exe (зеркало русское)
Можно было-бы просто:
Код:
InetGet("http://citylan.dl.sourceforge.net/project/hjt/2.0.4/HijackThis.exe", "\HijackThis.exe")

Но в будущем версия может измениться и вместо 2.0.4 будет 2.1.2 к примеру.
В общем как усовершенствовать данный процесс?
Что-бы InetGet получал уже с генерированный адрес

Получилось вот-так:
Код:
$adn = 'http://citylan.dl.sourceforge.net/project/hjt/'
$s2_URL = 'http://sourceforge.net/projects/hjt/'
$s2_Sourse = InetRead($s2_URL, 17)

If @error Then
    MsgBox(16, 'Error', 'InetRead')
    Exit
 EndIf
 
$s2_Sourse = BinaryToString($s2_Sourse)
$aLink = StringRegExp($s2_Sourse, '(?si)<a href="/projects/hjt/files/latest/download" title="Download /(.*?) from SourceForge', 3)

If @error Then
    MsgBox(16, 'Error', 'StringRegExp')
    Exit
 EndIf
 
$sFileName = $aLink[UBound($aLink) - 1]
$sLastLink = $adn & $sFileName

MsgBox(64, 'Info', $sLastLink)
 
Верх