簡體   English   中英

將圖像從Servlet生成的圖像src保存到硬盤

[英]Save Image from Servlet generated image src to Hard Disk

給定此html源,我不知道如何自動檢索圖像並將其保存到硬盤上:

<img src="https://someRemoteServer/servlet/GetItemServlet?ts=32352.3&itemtype=blabla">

我嘗試了wget,但是它只會將請求GetItemServlet本身保存到我的硬盤上。

我想遍歷遠程服務器上的700個圖像(我不擁有也不具有后端訪問權限),並將它們全部保存到具有唯一標識符的硬盤上。

編輯:wget的輸出:

HTTP Request sent, waiting for Response... 200 OK
Länge: 0 [text/plain]
Save in »»GetItemServlet?ts=32352.3««.

文件本身的大小為0KB。

當wget解決許多參數時,它會打印:

[29] 48426
[30] 48427
--2010-08-16 21:52:02--  https://media.myRemoteServer.com/servlet/GetItemServlet?ts=56555
-bash: 1281978458512=1: command not found

但隨后繼續

[2]   Done                    itemtype_text=[Keine+Auswahl]
..
[29]-  Done                    id=9
[30]+  Done                    res=2

編輯2:

在轉義“&”號和問號之后,wget表現更好,並拋出了完全不同的錯誤消息:

File name too long

Cannot write to >GetItemServlet?ts=32352.3&itemtype=blabla< (Unknown error: 0) 

Edit3:無休止的故事。 無論如何,這應該是超級用戶。 我縮短了URL名稱,它貫穿始終並確實保存了文件。 在這個似乎是HTML的文件中,它表示我的會話用完了,我需要登錄。 我確實通過wget提供了用戶名和密碼。 但是,當通過瀏覽器手動登錄該站點時,您必須通過表單登錄來進行。

它應該工作正常。 也許可以自動檢測到水lee蟲並返回了不同的響應。 由於您沒有詳細說明實際的響應,因此在黑暗中有點刺痛。 嘗試提供合法的用戶代理,或維護會話,或使用更智能的第三方竊取工具。

就是說,您是否意識到大多數網站管理員都不真正喜歡這種行為? 網絡帶寬和CPU負載不是免費的。


更新根據您的更新:名字似乎太長,是一個合法的另存為文件名,也? 是文件名中的非法字符(至少在Windows中是)。 這可能是這一切的根本原因。 我不執行wget ,但您至少應指定一個自定義輸出文件名。 將在其手冊中進行說明。 現在,這個問題可能更適合http://superuser.com

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM