Téléchargement automatique d' un fichier sur un site WEB avec un script VBS
16 réponses
news.free.fr
Bonsoir à tous,
Peut t'on à l'aide d'un script VBS téléchargé automatiquement un fichier
sur un site WEB, si oui quelle sont les lignes de commandes.
D'avance je vous remercie de votre colaboration....
Dans le message news:431c58ee$0$1004$ , Bertrand Lenoir-Welter s'est ainsi exprimé:
Je cherche plus simple encore : une mini-fenêtre avec juste une barre de progression, et à la rigueur l'affichage de l'URL et un bouton stop. [...] Le but est juste de télécharger un fichier unique depuis une URL et rien d'autre.
Et mon script "HTTPget.vbs", il ne te plait pas ? ;-) (posté ce jour même à 9h45) En ligne de commande, évident à utiliser, Et avec 12 lignes de code, il est difficile de faire plus léger ! ;-)
-- May the Force be with You! La Connaissance s'accroît quand on la partage ---------------------------------------------------------- Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org *
Dans le message news:431c58ee$0$1004$8fcfb975@news.wanadoo.fr ,
Bertrand Lenoir-Welter <bertrand.2004@galaad.net> s'est ainsi exprimé:
Je cherche plus simple encore : une mini-fenêtre avec juste une barre
de progression, et à la rigueur l'affichage de l'URL et un bouton
stop. [...]
Le but est juste de télécharger un fichier unique
depuis une URL et rien d'autre.
Et mon script "HTTPget.vbs", il ne te plait pas ? ;-)
(posté ce jour même à 9h45)
En ligne de commande, évident à utiliser,
Et avec 12 lignes de code, il est difficile de faire plus léger ! ;-)
--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org
Jean-Claude.Bellamy@wanadoo.fr * JC.Bellamy@free.fr
Dans le message news:431c58ee$0$1004$ , Bertrand Lenoir-Welter s'est ainsi exprimé:
Je cherche plus simple encore : une mini-fenêtre avec juste une barre de progression, et à la rigueur l'affichage de l'URL et un bouton stop. [...] Le but est juste de télécharger un fichier unique depuis une URL et rien d'autre.
Et mon script "HTTPget.vbs", il ne te plait pas ? ;-) (posté ce jour même à 9h45) En ligne de commande, évident à utiliser, Et avec 12 lignes de code, il est difficile de faire plus léger ! ;-)
-- May the Force be with You! La Connaissance s'accroît quand on la partage ---------------------------------------------------------- Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org *
rm
Le lundi 5 septembre 2005 à 19:21:13, Jean-Claude BELLAMY a écrit :
Salut,
Et avec 12 lignes de code, il est difficile de faire plus léger ! ;-)
en VBS probablement, mais en AutoIt (ça ne répond pas à la requête de l'OP, je sais), *deux lignes suffisent* :) pour faire exactement la même chose, compilable en HTTPGet.exe, si besoin :
-------------- HTTPGet.au3 -------------- ; Syntaxe HTTPGet.exe <url> <destination> If $CmdLine[0] <> 2 Then Exit InetGet($CmdLine[1], $CmdLine[2]) -------------- HTTPGet.au3 --------------
mais, pour avoir une "mini-fenêtre avec au moins une barre de progression" et un minimum de "contrôles", il faut rajouter quelques (trop?) lignes comme :
$url = "http://site.tld/chemin/fichier.ext" ; à modifier ! ; ou $url = $CmdLine[1] si l'url est passée en argument par exemple $fic = "fichier.ext" ; à modifier ! ; ou $fic = $CmdLine[2] si l'url est passée en second argument ou encore $fic = FileSaveDialog( "Enregistrer sous...", @MyDocumentsDir, "Tous fichiers (*.*)",3) pour choisir un chemin destination...
GUICreate("Téléchargement",220,100, 100,200) $progression = GUICtrlCreateProgress (10,20,200,20,$PBS_SMOOTH) $bouton = GUICtrlCreateButton ("Télécharger",75,70,70,20) GUISetState () do $msg = GUIGetMsg() If $msg = $bouton Then GUICtrlSetData ($bouton, "Connexion...") GUICtrlSetState($bouton,$GUI_DISABLE) $taille = InetGetSize ( $url ) If @error = 1 Then MsgBox (0,"Oups, problème...", "Impossible d'accèder à " & @CRLF & $url & @CRLF & "Terminé.") Exit EndIf InetGet($url, $fic, 1, 1) ;téléchargement de $url dans $fic GUICtrlSetState($bouton,$GUI_ENABLE) GUICtrlSetData ($bouton, "Annuler")
Do $m = GUIGetMsg () If $m = -3 Then ExitLoop If $m = $bouton Then InetGet( "abort" ) FileDelete ( $fic ) MsgBox (0,"Téléchargement", "Téléchargement interrompu" & @CRLF & "Fichier " & $fic & " supprimé.") Exit Else $recu = FileGetSize ( $fic ) GUICtrlSetData ($progression, $recu / $taille * 100) EndIf Until @InetGetActive = 0
MsgBox (0, "Téléchargement", "Téléchargement terminé avec succès" ) Exit
EndIf until $msg = $GUI_EVENT_CLOSE -------------- Télécharger.au3 --------------
Il doit être possible de faire la même chose en VBS, mais je n'intuite pas trop VBS ;-P
@+ -- rm http://foxmail.free.fr
Le lundi 5 septembre 2005 à 19:21:13, Jean-Claude BELLAMY a écrit :
Salut,
Et avec 12 lignes de code, il est difficile de faire plus léger ! ;-)
en VBS probablement, mais en AutoIt (ça ne répond pas à la requête de l'OP,
je sais), *deux lignes suffisent* :) pour faire exactement la même chose,
compilable en HTTPGet.exe, si besoin :
-------------- HTTPGet.au3 --------------
; Syntaxe HTTPGet.exe <url> <destination>
If $CmdLine[0] <> 2 Then Exit
InetGet($CmdLine[1], $CmdLine[2])
-------------- HTTPGet.au3 --------------
mais, pour avoir une "mini-fenêtre avec au moins une barre de progression"
et un minimum de "contrôles", il faut rajouter quelques (trop?) lignes
comme :
$url = "http://site.tld/chemin/fichier.ext" ; à modifier !
; ou $url = $CmdLine[1] si l'url est passée en argument par exemple
$fic = "fichier.ext" ; à modifier !
; ou $fic = $CmdLine[2] si l'url est passée en second argument ou encore
$fic = FileSaveDialog( "Enregistrer sous...", @MyDocumentsDir, "Tous
fichiers (*.*)",3) pour choisir un chemin destination...
Le lundi 5 septembre 2005 à 19:21:13, Jean-Claude BELLAMY a écrit :
Salut,
Et avec 12 lignes de code, il est difficile de faire plus léger ! ;-)
en VBS probablement, mais en AutoIt (ça ne répond pas à la requête de l'OP, je sais), *deux lignes suffisent* :) pour faire exactement la même chose, compilable en HTTPGet.exe, si besoin :
-------------- HTTPGet.au3 -------------- ; Syntaxe HTTPGet.exe <url> <destination> If $CmdLine[0] <> 2 Then Exit InetGet($CmdLine[1], $CmdLine[2]) -------------- HTTPGet.au3 --------------
mais, pour avoir une "mini-fenêtre avec au moins une barre de progression" et un minimum de "contrôles", il faut rajouter quelques (trop?) lignes comme :
$url = "http://site.tld/chemin/fichier.ext" ; à modifier ! ; ou $url = $CmdLine[1] si l'url est passée en argument par exemple $fic = "fichier.ext" ; à modifier ! ; ou $fic = $CmdLine[2] si l'url est passée en second argument ou encore $fic = FileSaveDialog( "Enregistrer sous...", @MyDocumentsDir, "Tous fichiers (*.*)",3) pour choisir un chemin destination...
GUICreate("Téléchargement",220,100, 100,200) $progression = GUICtrlCreateProgress (10,20,200,20,$PBS_SMOOTH) $bouton = GUICtrlCreateButton ("Télécharger",75,70,70,20) GUISetState () do $msg = GUIGetMsg() If $msg = $bouton Then GUICtrlSetData ($bouton, "Connexion...") GUICtrlSetState($bouton,$GUI_DISABLE) $taille = InetGetSize ( $url ) If @error = 1 Then MsgBox (0,"Oups, problème...", "Impossible d'accèder à " & @CRLF & $url & @CRLF & "Terminé.") Exit EndIf InetGet($url, $fic, 1, 1) ;téléchargement de $url dans $fic GUICtrlSetState($bouton,$GUI_ENABLE) GUICtrlSetData ($bouton, "Annuler")
Do $m = GUIGetMsg () If $m = -3 Then ExitLoop If $m = $bouton Then InetGet( "abort" ) FileDelete ( $fic ) MsgBox (0,"Téléchargement", "Téléchargement interrompu" & @CRLF & "Fichier " & $fic & " supprimé.") Exit Else $recu = FileGetSize ( $fic ) GUICtrlSetData ($progression, $recu / $taille * 100) EndIf Until @InetGetActive = 0
MsgBox (0, "Téléchargement", "Téléchargement terminé avec succès" ) Exit
EndIf until $msg = $GUI_EVENT_CLOSE -------------- Télécharger.au3 --------------
Il doit être possible de faire la même chose en VBS, mais je n'intuite pas trop VBS ;-P
@+ -- rm http://foxmail.free.fr
Bertrand Lenoir-Welter
Désolé, je capte que dalle aux scripts. Je suis un codeur C++ intégriste et je sais pas comment on peut fabriquer un exe avec votre machin. Je doute pas que ça marche, hein, mais je sais pas faire.
Si quelqu'un veut bien le faire pour moi, je lui envoie une boîte de chocolats et je lui baise les pieds par Net interposé.
Désolé, je capte que dalle aux scripts. Je suis un codeur C++ intégriste
et je sais pas comment on peut fabriquer un exe avec votre machin. Je
doute pas que ça marche, hein, mais je sais pas faire.
Si quelqu'un veut bien le faire pour moi, je lui envoie une boîte de
chocolats et je lui baise les pieds par Net interposé.
Désolé, je capte que dalle aux scripts. Je suis un codeur C++ intégriste et je sais pas comment on peut fabriquer un exe avec votre machin. Je doute pas que ça marche, hein, mais je sais pas faire.
Si quelqu'un veut bien le faire pour moi, je lui envoie une boîte de chocolats et je lui baise les pieds par Net interposé.
rm
Le lundi 5 septembre 2005 à 22:03:15, Bertrand Lenoir-Welter a écrit :
Désolé, je capte que dalle aux scripts. Je suis un codeur C++ intégriste
question naïve : pourquoi ne pas le faire en C++, alors ?
et je sais pas comment on peut fabriquer un exe avec votre machin. Je
1)installer le machin - 1,7Mo ! - libre et gratuit. http://www.autoitscript.com/cgi-bin/getfile.pl?autoit3/autoit-v3-setup.exe 2)coller ces bouts de "code" dans un nouveau fichier.au3 - enregistrer. 3)clic doit sur ce fichier, choix "Compiler" (c'est loin d'être une compilation!) 4)lancer le fichier.exe.
si tu préfères les images : http://www.autoitscript.com/autoit3/docs/tutorials/helloworld/helloworld.htm
doute pas que ça marche, hein, mais je sais pas faire.
n'étant pas plus intégriste que codeur, j'ai quand même fait qques essais : http://foxmail.free.fr/dl/HTTPGet.exe http://foxmail.free.fr/dl/HTTPGetGUI.exe ...ça marchote :)
Si quelqu'un veut bien le faire pour moi, je lui envoie une boîte de chocolats et je lui baise les pieds par Net interposé.
AutoiIt est fourni avec une jolie dll qui pourra, au besoin, être utilisée dans des langages plus "sérieux" <:o)
@+ -- rm, ka-arétélechokola...
Le lundi 5 septembre 2005 à 22:03:15, Bertrand Lenoir-Welter a écrit :
Désolé, je capte que dalle aux scripts. Je suis un codeur C++ intégriste
question naïve : pourquoi ne pas le faire en C++, alors ?
et je sais pas comment on peut fabriquer un exe avec votre machin. Je
1)installer le machin - 1,7Mo ! - libre et gratuit.
http://www.autoitscript.com/cgi-bin/getfile.pl?autoit3/autoit-v3-setup.exe
2)coller ces bouts de "code" dans un nouveau fichier.au3 - enregistrer.
3)clic doit sur ce fichier, choix "Compiler" (c'est loin d'être une
compilation!)
4)lancer le fichier.exe.
si tu préfères les images :
http://www.autoitscript.com/autoit3/docs/tutorials/helloworld/helloworld.htm
doute pas que ça marche, hein, mais je sais pas faire.
n'étant pas plus intégriste que codeur, j'ai quand même fait qques essais :
http://foxmail.free.fr/dl/HTTPGet.exe
http://foxmail.free.fr/dl/HTTPGetGUI.exe ...ça marchote :)
Si quelqu'un veut bien le faire pour moi, je lui envoie une boîte de
chocolats et je lui baise les pieds par Net interposé.
AutoiIt est fourni avec une jolie dll qui pourra, au besoin, être utilisée
dans des langages plus "sérieux" <:o)
Le lundi 5 septembre 2005 à 22:03:15, Bertrand Lenoir-Welter a écrit :
Désolé, je capte que dalle aux scripts. Je suis un codeur C++ intégriste
question naïve : pourquoi ne pas le faire en C++, alors ?
et je sais pas comment on peut fabriquer un exe avec votre machin. Je
1)installer le machin - 1,7Mo ! - libre et gratuit. http://www.autoitscript.com/cgi-bin/getfile.pl?autoit3/autoit-v3-setup.exe 2)coller ces bouts de "code" dans un nouveau fichier.au3 - enregistrer. 3)clic doit sur ce fichier, choix "Compiler" (c'est loin d'être une compilation!) 4)lancer le fichier.exe.
si tu préfères les images : http://www.autoitscript.com/autoit3/docs/tutorials/helloworld/helloworld.htm
doute pas que ça marche, hein, mais je sais pas faire.
n'étant pas plus intégriste que codeur, j'ai quand même fait qques essais : http://foxmail.free.fr/dl/HTTPGet.exe http://foxmail.free.fr/dl/HTTPGetGUI.exe ...ça marchote :)
Si quelqu'un veut bien le faire pour moi, je lui envoie une boîte de chocolats et je lui baise les pieds par Net interposé.
AutoiIt est fourni avec une jolie dll qui pourra, au besoin, être utilisée dans des langages plus "sérieux" <:o)
@+ -- rm, ka-arétélechokola...
Bertrand Lenoir-Welter
Eh ben c'est super. Je suis un codeur C++ intégriste qui a réussi à se faire son petit script AU3 de téléchargement GUI complètement sur mesure, et en plus ça marche. Très sympa, ce AutoIt3... Faudra que je creuse, par exemple pour un petit exe de dézippage des fichiers ainsi téléchargés, complément d'objet direct du précédent.
Je vous dois quand même une boîte de chocolats. Si, si, c'est sérieux ! Sans vos tuyaux, je l'aurais pas fait. Donnez-moi une adresse postale et je vous l'envoie illico. Mon e-mail est le bon, à l'année près.
Encore merci.
Eh ben c'est super. Je suis un codeur C++ intégriste qui a réussi à se
faire son petit script AU3 de téléchargement GUI complètement sur
mesure, et en plus ça marche. Très sympa, ce AutoIt3... Faudra que je
creuse, par exemple pour un petit exe de dézippage des fichiers ainsi
téléchargés, complément d'objet direct du précédent.
Je vous dois quand même une boîte de chocolats. Si, si, c'est sérieux !
Sans vos tuyaux, je l'aurais pas fait. Donnez-moi une adresse postale et
je vous l'envoie illico. Mon e-mail est le bon, à l'année près.
Eh ben c'est super. Je suis un codeur C++ intégriste qui a réussi à se faire son petit script AU3 de téléchargement GUI complètement sur mesure, et en plus ça marche. Très sympa, ce AutoIt3... Faudra que je creuse, par exemple pour un petit exe de dézippage des fichiers ainsi téléchargés, complément d'objet direct du précédent.
Je vous dois quand même une boîte de chocolats. Si, si, c'est sérieux ! Sans vos tuyaux, je l'aurais pas fait. Donnez-moi une adresse postale et je vous l'envoie illico. Mon e-mail est le bon, à l'année près.
Encore merci.
rm
Le Tue, 06 Sep 2005 09:47:16 +0200, Bertrand Lenoir-Welter a écrit :
Eh ben c'est super. Je suis un codeur C++ intégriste qui a réussi à se faire son petit script AU3 de téléchargement GUI complètement sur mesure, et en plus ça marche. Très sympa, ce AutoIt3...
bonjour,
ce n'est que du script, hein, ça reste limité et peu performant... mais c'est suffisamment simple & accessible pour un bricoleur un peu allergique à la programmation comme moi !
Faudra que je creuse, par exemple pour un petit exe de dézippage des fichiers ainsi téléchargés, complément d'objet direct du précédent.
c'est un peu moins simple car AutoIt n'intègre pas encore de fonctions de compression/décompression donc, soit il faut faire appel à des dll de windows ou tierces (comme http://files4.rarlab.com/rar/UnRARDLL.exe), soit "embarquer" dans le script compilé un dézipeur en ligne de commande (http://www.info-zip.org/pub/infozip/UnZip.html par exemple) qu'il suffira de larguer via un :
NB: parfois, les antivirus n'aiment pas trop ce genre de script qui "droppent" du .exe
Je vous dois quand même une boîte de chocolats. Si, si, c'est sérieux !
moi aussi je suis "sérieux": j'ai arrêté la drogue dure et noire :-P
Sans vos tuyaux, je l'aurais pas fait. Donnez-moi une adresse postale et je vous l'envoie illico. Mon e-mail est le bon, à l'année près. Encore merci.
un tutoiement me suffira :)
@+ -- rm
Le Tue, 06 Sep 2005 09:47:16 +0200, Bertrand Lenoir-Welter a écrit :
Eh ben c'est super. Je suis un codeur C++ intégriste qui a réussi à se
faire son petit script AU3 de téléchargement GUI complètement sur
mesure, et en plus ça marche. Très sympa, ce AutoIt3...
bonjour,
ce n'est que du script, hein, ça reste limité et peu performant...
mais c'est suffisamment simple & accessible pour un bricoleur un peu
allergique à la programmation comme moi !
Faudra que je
creuse, par exemple pour un petit exe de dézippage des fichiers ainsi
téléchargés, complément d'objet direct du précédent.
c'est un peu moins simple car AutoIt n'intègre pas encore de fonctions de
compression/décompression donc, soit il faut faire appel à des dll de
windows ou tierces (comme http://files4.rarlab.com/rar/UnRARDLL.exe), soit
"embarquer" dans le script compilé un dézipeur en ligne de commande
(http://www.info-zip.org/pub/infozip/UnZip.html par exemple) qu'il suffira
de larguer via un :
Le Tue, 06 Sep 2005 09:47:16 +0200, Bertrand Lenoir-Welter a écrit :
Eh ben c'est super. Je suis un codeur C++ intégriste qui a réussi à se faire son petit script AU3 de téléchargement GUI complètement sur mesure, et en plus ça marche. Très sympa, ce AutoIt3...
bonjour,
ce n'est que du script, hein, ça reste limité et peu performant... mais c'est suffisamment simple & accessible pour un bricoleur un peu allergique à la programmation comme moi !
Faudra que je creuse, par exemple pour un petit exe de dézippage des fichiers ainsi téléchargés, complément d'objet direct du précédent.
c'est un peu moins simple car AutoIt n'intègre pas encore de fonctions de compression/décompression donc, soit il faut faire appel à des dll de windows ou tierces (comme http://files4.rarlab.com/rar/UnRARDLL.exe), soit "embarquer" dans le script compilé un dézipeur en ligne de commande (http://www.info-zip.org/pub/infozip/UnZip.html par exemple) qu'il suffira de larguer via un :