2012-07-27 86 views
0

嗨,在Google搜索時,我可以看到任何URL的發佈日期。獲取網頁的發佈日期

我可以在Android中做些什麼,我有url列表,我想獲取這些URL的發佈日期。

有什麼想法?

回答

2

這樣做的一種方法是向網址發送HEAD請求,然後查看響應的標頭。請注意,雖然某些Web服務器可能不提供LastModified標頭,但在這種情況下,您將無法確定此日期,但在大多數情況下,您應該可以獲得它。代碼將如下所示:

HttpClient client = new DefaultHttpClient(); 
String url = "http://example.com/getmethod.aspx?id=111&method=Test"; 
HttpHead req = new HttpHead(url); 
HttpResponse resp = client.execute(req); 
String lastMod = resp.getFirtHeader("Last-Modified") 
if(lastMod != null) { 
    //parse this string to get a date 
    //it will be in this format: Wed, 15 Nov 1995 04:58:08 GMT 
} 
+0

它總是在resp.getFirstHeader(「Last-Modified」)中崩潰,nullpointerexception,任何想法 – Ali 2012-07-27 17:30:14

+0

@Ali可能'client.execute(req)'返回'null'。你需要檢查那裏發生了什麼。或者,可以嘗試將'HttpHead'更改爲'HttpGet',並查看是否得到有效的響應。 – 2012-07-27 18:21:28

+0

this line resp.getFirstHeader(「Last-Modified」)。getValue()get null – Ali 2012-07-27 18:37:31

0

我會看看Apache HttpComponents。你可以在這裏找到它:http://hc.apache.org/

編輯: 你也可以使用AndroidHttpClient。