[英]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.