2010-04-14 70 views
1

我需要從網站上下載圖片,我有登錄名和密碼,但是如果我只是使用URL下載圖片,它會拋出一個異常:會話中沒有任何值。如何以編程方式從網站下載圖片?

我想我需要先登錄網站,然後才能以編程方式下載圖像。

你有什麼解決方案嗎?提前致謝 !

回答

-1

我想提HtmlUnit。這是一個帶Java Javascript的無頭瀏覽器。

1

在簡單的情況下,您可以使用帶有URL的URLConnection並下傳內容。更一般地說,我強烈建議你使用Apache HttpClient,因爲你需要進行身份驗證,並可能收到併發送cookie到服務器。閱讀關於AuthenticationMethods的用戶指南,尤其是Get

+1

來自http://hc.apache.org:* HttpComponents客戶端是Commons HttpClient 3.x的繼任者和替代者。強烈建議Commons HttpClient用戶升級。*;) – BalusC 2010-04-14 13:15:47

1

使用HTTP Client庫來編寫內容訪問的蜘蛛。

我建議記錄登錄和內容訪問的HTTP流量,然後使用庫重建通信,如果你想堅持使用Java。

還有其他一些庫以及Perl等其他語言:LWP。

1

儘管java.net軟件包提供了通過HTTP訪問資源的基本功能,但它並沒有提供許多應用程序所需的全部靈活性或功能。 HttpClient試圖通過提供一個高效的,最新的,功能豐富的包來實現最新的HTTP標準和建議的客戶端,從而填補這一空白。 爲基礎HTTP協議提供強大的支持而設計的擴展,對於任何構建HTTP感知的客戶端應用程序(如Web瀏覽器,Web服務客戶端或利用或擴展HTTP協議以進行分佈式通信的系統),HttpClient可能都很感興趣。

HTTPClient

HTTPClient Authentication