Im LWP zum Herunterladen einer ausführbaren Dateityp und mit der Antwort im Speicher, ich bin in der Lage, die Datei zu hacken. Wie kann ich diese Datei auf meinem System speichern? Ich denke, ich bin auf der falschen Spur mit dem, was ich unten versuche. Der Download ist erfolgreich, da ich in der Lage bin, den Hash korrekt zu generieren (ich habe es durch Herunterladen der tatsächlichen Datei und Vergleichen der Hashes überprüft).perl speichern Sie eine Datei heruntergeladen von lwp
use strict;
use warnings;
use LWP::Useragent;
use Digest::MD5 qw(md5_hex);
use Digest::MD5::File qw(file_md5_hex);
use File::Fetch;
my $url = 'http://www.karenware.com/progs/pthasher-setup.exe';
my $filename = $url;
$filename =~ m/.*\/(.*)$/;
$filename = $1;
my $dir ='/download/two';
print "$filename\n";
my $ua = LWP::UserAgent->new();
my $response = $ua->get($url);
die $response->status_line if !$response->is_success;
my $file = $response->decoded_content(charset => 'none');
my $md5_hex = md5_hex($file);
print "$md5_hex\n";
my $save = "Downloaded/$filename";
unless(open SAVE, '>>'.$save) {
die "\nCannot create save file '$save'\n";
}
print SAVE $file;
close SAVE;
Wenn Sie sich fragen, warum lade ich nicht stattdessen alles dann analysieren Sie den Ordner für jede Datei und Hash, seine weil im all diese Dateien in einer Schleife herunterzuladen. Und während jeder Schleife lade ich die relevante Quell-URL (wo diese Datei gefunden wurde) zusammen mit dem Dateinamen und Hash in eine Datenbank auf einmal.
Vielen Dank, aber der Nachteil an getstore() ist, dass der Ordner bereits existieren muss. Ich wurde für einen Moment geschockt, als keine Datei/Ordner erschien. –