Gå til innhold

Anbefalte innlegg

Hei.

 

Jeg kjører windows, med perl, og vil hente et bilde fra en url å legge lokalt i en mappe på pcen. Det funker når jeg bare flytter en fil rundt lokalt, men ikke når jeg putter en url som første parameter:

 

 

$pictarget = "bilde/";

$source = "http://cache.finn.no/mmo/9/950/702/9_-2076186223_hoved.jpg";

copy($source, $pictarget) or die "Finner ikke bilde.\n";

 

Hvorfor virker ikke dette?

Lenke til kommentar
Videoannonse
Annonse
#!/usr/bin/perl

use strict;
use LWP::Simple;
use File::Basename;

my $pictarget = "bilde/";
my $source = "http://cache.finn.no/mmo/9/950/702/9_-2076186223_hoved.jpg";

my $fname = basename $source;
my $data = get( $source );

open FILE, ">", $pictarget . $fname;
print FILE $data;
close FILE;

Lenke til kommentar

Takk for svar.

 

Det funker forsåvidt, men bare i den forstand at den henter bildet. Den skriver det ikke korrekt, så det blir et uleselig "kornete" bilde. Finnes det en måte å forklare print at det er et bilde som skrives?

Lenke til kommentar

På win32 må du sette filehandle i binær mode, ellers vil linjeskift (\n) tolkes som "\r\n", en endring som ikke er helt sunt å få inne i binær filer..

 

 

...

open FILE, ">", $pictarget . $fname;

binmode FILE;

...

Lenke til kommentar
På win32 må du sette filehandle i binær mode, ellers vil linjeskift (\n) tolkes som "\r\n", en endring som ikke er helt sunt å få inne i binær filer..

 

 

...

open FILE, ">", $pictarget . $fname;

binmode FILE;

...

8185207[/snapback]

Han bruker LWP::Simple...

 

EDIT: Opps. Stryk den ;p Så ikke lengre ned i koden.

Endret av Inf3rn090
Lenke til kommentar
  • 10 måneder senere...

evn. kan du prøve:

 

use LWP::Simple;

mirror("http://url","c:\\bildermappe\\1.jpg");

 

Jeg har ikke hatt problemer med at bildene blir noe distorted da ...

 

 

PS: Om du få feilmelding at du ikke har LWP::Simple installert, kan du skrive:

ppm install LWP-Simple ....

i kommandolinje .. så blir den installert (tror jeg ., skriver uten å teste)

Endret av Preben01
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...