Page 1 sur 1

[..] Comment récupérer le lien direct avec le nom du fichier à partir d'une URL dynamique ?

Posté : lun. 26 mars 2018 00:54
par Hackoo
Salut tout le monde :)
Je me demande est-ce-qu'il y a un moyen pour récupérer le lien direct avec le nom du fichier (RogueKiller_setup.exe) de cette URL afin de le télécharger par Autoit ?
L'URL en question : http://download.adlice.com/api/?action= ... type=setup
Merci !

Re: [..] Comment récupérer le lien direct avec le nom du fichier à partir d'une URL dynamique ?

Posté : lun. 26 mars 2018 09:53
par walkson
Bonjour,
InetGet()
ou indirectement ShellExecute()

Re: [..] Comment récupérer le lien direct avec le nom du fichier à partir d'une URL dynamique ?

Posté : lun. 26 mars 2018 11:30
par Hackoo
Salut :)
Mon but est de faire une commande externe que je vais l'utiliser en ligne de commande ou bien dans un script batch avec une barre de progression, donc ce que je cherche pour télécharger le fichier en question est d'obtenir son lien diect càd qui a une extension à la fin de l'URL .exe ou bien .zip ou bien .rar etc ...
mais dans cette dernière URL je n'ai aucune information sur l'obtention de tel lien direct ? j'espére que vous me comprenez ce que je veux dire ?
Donc, ma question est-ce-qu'il y a un moyen de le retrouver par une regexp ou autre astuce ?
Voilà le code source du Downloader.au3
► Afficher le texteDownloader.au3
Code Batch pour télécharger Malwarebytes v 3.4.4 avec une commande externe en Autoit avec une barre de progression :
@echo off
Mode 70,3 & color 0A
Title Download with Progress Bar using Autoit by Hackoo 2018
echo(
echo      Please Wait a While ... The download is in progress ...
Set "URL=https://downloads.malwarebytes.com/file/mb3/"
Call Download "%URL%"
for /f "delims=" %%a in ('Dir /b "%~dp0*.exe" ^| find /I "setup"') do (
   Start "" "%%a"
)
Exit

Re: [..] Comment récupérer le lien direct avec le nom du fichier à partir d'une URL dynamique ?

Posté : lun. 26 mars 2018 14:41
par Tlem
Bonjour.
De plus en plus de site utilisent des pages php qui ne permet pas de connaitre l'adresse d'origine, du coup impossible d'avoir dans certains cas cette adresse.
Pour le cas de Malwarebytes, vous pouvez utiliser votre navigateur pour télécharger l'installateur et sur l'historique des téléchargement extraire le lien d'origine.
Ce qui donne pour malwarebyes : https://data-cdn.mbamupdates.com/web/mb ... 0.4478.exe

Après sur certains sites, il est possible de connaitre le nom de l'exécutable à télécharger en fouillant l'historique des versions, mais cela ne fonctionne pas tout le temps.
Si vous arrivez à surveiller les échanges entre le logiciel concerné et le site de l'éditeur, vous pouvez aussi arriver à connaitre le lien de contrôle du numéro de version, mais là encore, rien de fiable à 100%.

Re: [..] Comment récupérer le lien direct avec le nom du fichier à partir d'une URL dynamique ?

Posté : lun. 26 mars 2018 18:10
par orax
C'est pareil sur ce forum, avec les avatars ; l'emplacement où est stocké l'image n'est pas indiqué dans l'URL. Par exemple, quand je télécharge le fichier download/file.php?avatar=4404_1331030491.jpg dans un logiciel de téléchargement, le nom du fichier qui sera enregistré est 4404.jpg. Ce nom de fichier est apparemment indiqué dans les en-têtes HTTP.

Code : Tout sélectionner

HTTP/1.1 200 OK
Date: Mon, 26 Mar 2018 13:05:31 GMT
Content-Type: image/jpeg
Content-Length: 3580
Server: Apache
X-Powered-By: PHP/7.1.13
Cache-Control: public
Content-Disposition: inline; filename*=UTF-8''4404.jpg
Expires: Tue, 26 Mar 2019 13:05:31 GMT
Last-Modified: Tue, 06 Mar 2012 10:41:31 GMT
X-IPLB-Instance: 5281

Re: [..] Comment récupérer le lien direct avec le nom du fichier à partir d'une URL dynamique ?

Posté : mar. 27 mars 2018 16:01
par Hackoo
Suite à la remarque de orax, j'ai fait un petit vbscript avec une barre de progression en HTA.
Adwcleaner.png
AdwCleaner2.png
MBAM3.png
Image
Multi-Downloader.vbs pour télécharger des fichiers avec des liens directs ou dynamiques
► Afficher le texteMulti-Downloader.vbs
Donc, il me reste juste quelqu'un parmi vous m'aide a le traduire en Autoit :P