你能得到更多关于在线文件的信息吗?

2024-09-30 20:23:34 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个在线文件: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

你能得到更多的信息让我确定软件版本是否改变了吗?你知道吗


Tags: 版本comhttp软件responsedircontenturllib2
3条回答
  1. 使用range头文件下载文件的大约1000个字节。

  2. 使用pefile解析PE头并提取版本信息。

  3. 有了这些数据,extract useful information比如时间-日期戳和其他一些好东西,你就可以在文件中找到变化,而不必阅读全部内容。

如果你下载一个EXE Windows文件,你可以得到它的各种信息(简单的方法是在它上面运行外部实用程序,或者很难的方法是通过API和你自己的代码来模拟这些实用程序),这很大程度上取决于它在构建时输入了什么信息。如果不下载,你只能得到服务器提供的信息,在这种情况下,这似乎非常稀少我不敢相信服务器配置为不告诉你最新修改日期&;c。站在你的立场上,我会看看服务器端可以做些什么来弥补信息的匮乏,所以你不必下载EXE只是为了了解更多!你知道吗

将服务器配置为提供Last-Modified头,并在请求中使用If-Modified-Since。你知道吗

相关问题 更多 >