2009-08-11 44 views
-2

我有一個在線文件:http://dl_dir.qq.com/qqfile/tm/TM2009Beta_chs.exe,請不要下載它,我想確定軟件版本是否更改,所以我想了解更多的信息。例如,使用python,我能得到這個:你能獲得更多關於在線文件的信息嗎?

import urllib2,urllib 
req = urllib2.Request('http://dl_dir.qq.com/qqfile/tm/TM2009Beta_chs.exe')   
response = urllib2.urlopen(req) 
print response.info() 
print response.geturl() 

Content-Length: 16868680 
Server: qqdlsrv(1.84 for linux) 
Connection: close 
Content-Disposition: attachment; filename=TM2009Beta_chs.exe 
Accept-Ranges: bytes 
Content-Type: application/octet-stream 

http://dl_dir.qq.com/qqfile/tm/TM2009Beta_chs.exe 

你可以得到更多的imformation讓我確定軟件版本改變了嗎?

+3

這幾乎是**最有效的方式來浪費你的帶寬。爲了獲得最大效率,我建議在4chan上發帖「嘿,你們帶寬很貴,不要下載這個文件。」 – 2009-08-11 03:03:03

+1

除了URL,確切的重複http://stackoverflow.com/questions/1253282/how-can-i-get-the-file-version-on-the-internet-but-not-download-it – mhawke 2009-08-11 03:48:12

回答

2

如果你下載了它,你可以得到關於EXE Windows文件的所有信息(簡單的方法,通過運行外部工具,或者通過API和你自己的代碼來模擬這些工具) - 很大程度上取決於構建時將哪些信息放入其中。沒有下載,你只能得到服務器給你的信息,在這種情況下,它似乎相當稀少 - 我無法相信服務器的配置不告訴你最新的修改日期& c。在你的鞋子裏,我會看到在服務器端可以做些什麼來彌補信息的缺乏,所以你不必下載EXE來了解更多信息!

4
  1. 使用範圍標題下載文件的第一千字節左右。

  2. 使用pefile解析PE標頭並提取版本信息。

  3. 隨着數據extract useful information如時間日期戳和其他好東西,讓你找到文件的變化而不讀取整個事情。

相關問題