Page 1 sur 1
[..] Comment lister les fichiers d'un repertoire web
Posté : jeu. 11 sept. 2008 13:22
par auto3yop
Bonjour,
je souhaiterais savoir comment lister les fichiers present sur un site web
Merci
Re: [..] Comment lister les fichiers d'un repertoire web
Posté : jeu. 11 sept. 2008 16:16
par jbnh
Bonjour,
J'ai eu dur dur

mais j'ai finalement réussi. J'ai trouvé un UDF sur le forum anglais (de JohnMC) qui permettait de downloader les fichiers d'un répertoire ftp. J'ai modifié la fonction pour qu'elle liste seulement les fichiers.
En gros:
Code : Tout sélectionner
#include <Array.au3>
#include <.FTP.au3>
;********************************************************
$server = 'ftp://ftp.url.net'
$username = '*******'
$pass = '******'
;********************************************************
$Hand = _FTPOpen('Doesnt Matter')
$Ftpc = _FTPConnect($Hand, $server, $username, $pass)
if @error then
msgbox(0,"Error","Connect Error")
Exit
EndIf
;********************************************************
_FTPGetFolderContents($Hand,"/test/","",1) ;Les fichiers dans le répertoire 'test'
;********************************************************
$Ftpc = _FTPClose($Hand)
Changer les infos de connection, ainsi que le dossier dans
_FTPGetFolderContents (mettre "" pour avoir la racine du ftp).
Voila le fichier .FTP.au3 à dispo
Un petit oeil sur la fonction
_FTPGetFolderContents
► Afficher le textele code
Code : Tout sélectionner
Func _FTPGetFolderContents(ByRef $l_FTPSession, $s_RemoteDir, $s_LocalDir, $b_RecursiveGet=1, $s_searchfor="*")
local $folderlist[1]
Local $i=0
[b] $array= _ArrayCreate("Results:")[/b]
While $i < UBound($folderlist)
Local $subpath=$folderlist[$i]
_FtpSetCurrentDir($l_FTPSession,"/" & $s_RemoteDir & $subpath)
local $FileInfo = _FtpFileFindFirst ($l_FTPSession,$s_searchfor)
while $FileInfo[0]<>0
if $FileInfo[1]=16 and $FileInfo[10] <> "." and $FileInfo[10] <> ".." And $b_RecursiveGet<>0 Then
Local $iUBound = UBound($folderlist)
ReDim $folderlist[$iUBound + 1]
$folderlist[$iUBound] = "/" & $subpath & $FileInfo[10] & "/"
elseif $FileInfo[1]=128 then
$downloadto = $s_LocalDir & stringReplace ($subpath,"/","\")
If Not FileExists($downloadto) then DirCreate($downloadto)
[b] _ArrayAdd($array, $subpath&$FileInfo[10])[/b]
endif
$FileInfo = _FtpFileFindNext($l_FTPSession)
wend
_FTPFileFindClose($l_FTPSession)
$i+=1
WEnd
[b]_ArrayDisplay ($array,"Results")[/b]
EndFunc ;==>_FTPGetFolderContents
Re: [..] Comment lister les fichiers d'un repertoire web
Posté : ven. 12 sept. 2008 20:57
par Tlem
Je pense que auto3yop souhaite lister les fichiers d'un site WWW.
Pour faire par exemple une aspiration de site ...

et je ne saurais cautionner ce type de pratique.