2009-08-11 14 views
-2

私はオンラインファイルを持っています:http://dl_dir.qq.com/qqfile/tm/TM2009Beta_chs.exe、それをダウンロードしないでください、私は変更されているかどうかをソフトウェアのバージョンを判断したいので、私はそれについてのより多くの情報が必要です。例えば、パイソンを使用して、私はこれを取得することができますオンラインファイルに関する詳細情報を入手できますか?

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に投稿することをお勧めします。ちょっと人の帯域幅は高価ですが、このファイルをダウンロードしないでください。 –

+1

URLの他に、http://stackoverflow.com/questions/1253282/how-can-i-get-the-file-version-on-the-internet-but-not-download-itの正確な複製 – mhawke

答えて

2

ダウンロードしたEXE Windowsファイルに関するあらゆる種類の情報を入手することができます(簡単な方法、外部ユーティリティを使用して実行するか、難しい方法でAPIやそれらのユーティリティをシミュレートする独自のコードを使用) ) - 多くの情報は、それが構築されたときにどの情報が入れられたかによって異なります。ダウンロードすることなく、サーバが提供している情報だけを得ることができます。この場合はかなり不足しているようです。サーバが最新の変更日&を知らないように設定されているとは思えません。あなたの靴では、情報の不足を補うためにサーバ側で何ができるのかを知ることができるので、詳細を知るためにEXEをダウンロードする必要はありません!

4
  1. 範囲ヘッダーを使用してファイルの最初の1000バイトをダウンロードします。

  2. pefileを使用して、PEヘッダーを解析し、バージョン情報を抽出します。データで

  3. 、このような時の日付スタンプ、あなたは全部を読まずにファイルの変更を見つけてみましょう他のグッズとしてextract useful information

関連する問題