Что нового

скрипт для скачки файлов с рипазитория

winstan

Эксплотатор)
Сообщения
406
Репутация
79
Версия AutoIt: 3.3.6.1

Описание:
Требуется скрипт для скачки файлов с рипазитория.
Нужно чтобы при запуске скрипт перешол на по этой ссылке http://open-aion.org/svn/
и начала скачивать файлы со всех директорий на компьютер и сохранять файлы сохраняя относительные пути.
Примечания:
Желательно чтобы информация о скачке сохранялась в лог.
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
А чем специализированные программы не проходят?
TortoiseSVN например.
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
Если тебе интересно как это сделать на AutoIT - это это будет выглядет как то так:
Код:
#include <Inet.au3>

$URL = "http://open-aion.org/svn/"
$DestFolder = @ScriptDir & "\SVN"

_CountSave($URL ,$DestFolder, $DestFolder)

Func _CountSave($sURL, $sSaveDir, $sLogFolder)
	Local $sSource, $aFileFolders, $hOpen, $log = ""
	
	$sSaveDir = StringReplace($sSaveDir, "\\", "\")
	$hOpen = FileOpen($sLogFolder & '\Log.txt',9)
	$sSource = _INetGetSource($sURL)
	$aFileFolders = StringRegExp($sSource,'<li><a href=.+>(.+)</a></li>',3)
	If Ubound($aFileFolders) > 0 Then 
		For $i = 0 To Ubound($aFileFolders) - 1
			If $aFileFolders[$i] = ".." Then ContinueLoop
			If StringInStr($aFileFolders[$i], "/") Then 
				If Not FileExists($sSaveDir & "\" & StringReplace($aFileFolders[$i],"/","")) Then DirCreate($sSaveDir & "\" & StringReplace($aFileFolders[$i],"/",""))
				_CountSave($sURL & $aFileFolders[$i], $sSaveDir & "\" & StringReplace($aFileFolders[$i],"/","\"),$sLogFolder)
			Else 
				InetGet($sURL & $aFileFolders[$i], $sSaveDir & $aFileFolders[$i])
				$Log &= $sSaveDir & $aFileFolders[$i] & @CRLF
			EndIf
			FileWrite($hOpen,$Log)
			$Log = ""
		Next
	EndIf
	FileClose($hOpen)
EndFunc

Функция должна подходить для большинства SVN
 
Верх