2011-02-16 46 views
2

我有下面這個腳本,在這裏我想從一個URL下載PDF的Perl從網站保存文件到桌面

#!/usr/bin/perl 
use warnings; 
use strict; 
use LWP::Simple; 

my $save = "C:\\Users\\rahard\\Desktop\\"; 
my $file = get 'http://locationoffile'; 

我怎樣才能保存PDF到桌面? (如果我點擊的URL,它會pront我節省了隨機名的文件)

謝謝

/編輯在$一些語法錯誤保存和編輯$文件位置

回答

2

使用open開文件句柄並打印到它。另請注意,$save中的每個反斜槓都必須轉義。

my $save = "C:\\Users\\rahard\\Desktop\\"; 
my $file = get 'http://file.pdf'; 

open(FILE, '>', $save . 'filename.pdf') or die $!; 
binmode FILE; 
print FILE $file; 
close(FILE); 
+0

嗨,謝謝。但是,我需要打開url並獲取文件(因爲主要是每次下載URL時都有一個隨機名)。所以我不能指定打開(FILE,'>',$ save。'filename.pdf'),因爲filename.pdf將是隨機的。 – rahardi 2011-02-16 11:02:42

0

難道這是該網址不是PDF的原始位置,你會被重定向到他們? 如果get的回覆不是有效的pdf,它可能是重定向頁面的html內容。

我會先測試一下。

因此,我會使用WWW::Mechanize或類似的庫。