|
You last visited: Today at 13:42
Advertisement
Problem mit InetGet
Discussion on Problem mit InetGet within the AutoIt forum part of the Coders Den category.
01/27/2011, 20:53
|
#1
|
elite*gold: 17
Join Date: Jul 2009
Posts: 1,562
Received Thanks: 478
|
Problem mit InetGet
Hi
Ich will per InetGet() ein paar Dateien runterladen.
Die Dateien sollen aber nicht direkt in den Ordner, in dem die EXE ist, sondern in einen Unterordner.
Die Dateien werden zwar runtergeladen aber sind alle 4KB groß (sind sie in Wirklichkeit nicht) und fehlerhaft/funktionieren nicht.
|
|
|
01/27/2011, 21:06
|
#2
|
elite*gold: 0
Join Date: Sep 2010
Posts: 487
Received Thanks: 196
|
Kommt drauf an wo du die runterlädst, es muss die datei im netz angegeben sein
also z.B Megaupload geht nicht^^
( Inetget("URL","Speicherort")
|
|
|
01/27/2011, 21:11
|
#3
|
elite*gold: 17
Join Date: Jul 2009
Posts: 1,562
Received Thanks: 478
|
Ich will eine txt Datei haben, in der alle Dateien stehen, die runtergeladen werden sollen in der Form:
Code:
ordnername/dateiname.exe
Das wird ausgelesen und als $file gespeichert
und dann halt InetGet($url,$file)
€dit: Und nein kein Megaupload oder so
Von einem Freehoster oder so
|
|
|
01/28/2011, 20:49
|
#4
|
elite*gold: 0
Join Date: Feb 2010
Posts: 344
Received Thanks: 151
|
Code:
#include <INet.au3>
$URL = "Hier URL des Downloads rein"
$Verzeichnis = "Hier Ort eingeben, wo die Datei gespeichert wird"
$Daten = _InetGetSource($URL)
FileWrite($Verzeichnis,$Daten)
Geht nur für direkte Downloads!
Ist nur für kleine Daten empfehlenswert, es dauert lange und bei sehr großen Daten wird dein Arbeitsspeicher voll sein.
|
|
|
01/29/2011, 21:35
|
#5
|
elite*gold: 17
Join Date: Jul 2009
Posts: 1,562
Received Thanks: 478
|
Ich will aber viele (ca. 50) sehr kleine (1KB) Dateien ganz schnell runterladen^^
|
|
|
01/29/2011, 22:43
|
#6
|
elite*gold: 0
Join Date: Dec 2007
Posts: 1,262
Received Thanks: 623
|
Quote:
Originally Posted by poll7979
Ich will aber viele (ca. 50) sehr kleine (1KB) Dateien ganz schnell runterladen^^
|
evtl. als zip packen und dann entpacken
|
|
|
01/30/2011, 10:03
|
#7
|
elite*gold: 0
Join Date: Feb 2010
Posts: 344
Received Thanks: 151
|
Quote:
Originally Posted by jonny5252
evtl. als zip packen und dann entpacken
|
Oder die Dateien nummerieren, wie zum Beispiel datei1.datei, datei2.datei,...
Dann eine For-Schleife machen, bei der ein Integer am Anfang 0 ist und 1 höher zählt bis 50. In diese For-Schleife machst du dann den Download-Skript rein.
Hier mal ein Beispiel (ungetestet) :
Code:
#include <Inet.au3>
For $i=0 To 50 Step 1
_getfile("127.0.0.1/datei"& $i &".datei","C:\Downloads\datei"& $i&".datei")
Next
MsgBox(0,"Downloads","Die Dateien wurden heruntergeladen!")
Func _getfile($URL,$Dateispeichern)
$Daten = _InetGetSource($URL)
FileWrite($Dateispeichern,$Daten)
EndFunc
Wenn du aber die Downloads nicht nummeriert downloaden willst, dann mach das ganze mit Arrays.
Mit Arrays (unübersichtlich und ungetestet) :
Code:
#include <Inet.au3>
global $URL1[5]
$IP = "127.0.0.1"
$URL1[0] = $IP&"/setup.exe"
$URL1[1] = $IP&"/uninstall.exe"
$URL1[2] = $IP&"/index.html"
$URL1[3] = $IP&"/apache.exe"
$URL1[4] = $IP&"/leerestextdokument.txt"
global $Downloadziel[5]
$Downloadziel[0] = "C:\Downloads\setup.exe"
$Downloadziel[1] = "C:\Downloads\uninstall.exe"
$Downloadziel[2] = "C:\Downloads\index.html"
$Downloadziel[3] = "C:\Downloads\apache.exe"
$Downloadziel[4] = "C:\Downloads\leerestextdokument.txt"
For $i=0 To 5 Step 1
_getfile($URL1[$i],$Downloadziel[$i])
Next
MsgBox(0,"Downloads","Die Dateien wurden heruntergeladen!")
Func _getfile($URL,$Dateispeichern)
$Daten = _InetGetSource($URL)
FileWrite($Dateispeichern,$Daten)
EndFunc
P.S. Hast du einen DNS-Namen (zum Beispiel  ) als Downloadserver? Wenn ja, dann musst du den DNS-Namen in eine IP umwandeln.
Code:
$ip = _tcptoip("www.elitepvpers.com")
MsgBox(0,"IP","Die IP ist : "&$ip)
Func _tcptoip($TCP)
TCPStartup()
$ip = TCPNameToIp($TCP)
TCPShutdown()
|
|
|
01/30/2011, 17:14
|
#8
|
elite*gold: 17
Join Date: Jul 2009
Posts: 1,562
Received Thanks: 478
|
Danke ich werd es mit den Arrays versuchen
€dit:
Ist es möglich, die Variablen in einer While-Schleife zu definieren?
So ungefähr:
PHP Code:
$n = 0 While $n < 58 $url1[$n] = $url & "/" & $file $n = $n + 1 Wend
|
|
|
01/31/2011, 19:39
|
#9
|
elite*gold: 0
Join Date: Feb 2010
Posts: 344
Received Thanks: 151
|
Quote:
Originally Posted by poll7979
Danke ich werd es mit den Arrays versuchen
€dit:
Ist es möglich, die Variablen in einer While-Schleife zu definieren?
So ungefähr:
PHP Code:
$n = 0
While $n < 58
$url1[$n] = $url & "/" & $file
$n = $n + 1
Wend
|
Ja, so, wie du es gemacht hast, ist es (glaube ich) richtig.
In einer For-Schleife ist es aber ein bisschen einfacher
|
|
|
Similar Threads
|
Gui per Inetget?
09/16/2010 - AutoIt - 8 Replies
Hi.
Ich will in meinem neuen Trainer für S4League dieses bild als hintergrund
http://www.mypspwallpapers.com/uploads/200704/f/1 176278451.jpg
aber ich habe nicht wirklich lust dass in einen Ordner zu packen...
Könntet ihr mir kurz und knackig erklären wie das mit Inetget zu realisieren wäre?
|
InetGet ftw
07/13/2010 - AutoIt - 0 Replies
Hat sich erledigt ;D
Bitte löschen
|
Frage zu InetGet in Autoit
12/30/2008 - Guild Wars - 12 Replies
Hi,
hab die Helpfiles durchforstet aber nichts gefunden...
Also in AutoIT gibt es ja den Befehl InetGet. Soweit ich es verstanden habe, kann man mit diesem Befehl Datein aus dem Internet herunterladen.
Und nein, ich brauch das nicht um Trojaner,Viren und co zu machen.
Alles was ich machen will ist ein kleines Tool, mit dem man einfach den entsprechenden (public) Bot downloaden kann.(z.B. Thermalquellen, ohne lang nach der aktuellen suchen zu muessen).
MfG,
NBA
|
All times are GMT +1. The time now is 13:42.
|
|