【问题标题】:Python. Get file date and time (timestamp) from HTTP serverPython。从 HTTP 服务器获取文件日期和时间(时间戳)
【发布时间】:2019-11-12 15:46:50
【问题描述】:

我需要使用 Python 程序从 HTTP 服务器下载文件,同时保留文件创建的原始时间戳。

因此,有两个问题:

  1. 如何使用 Python 3.7 从 HTTP 服务器获取文件日期?
  2. 如何为下载的文件设置这个日期?

【问题讨论】:

    标签: python python-3.x timestamp


    【解决方案1】:

    您可以查看requests 以下载文件并从标题中获取修改日期。

    要设置日期,您可以使用 os.utimeemail.utils.parsedate 从标题中解析日期(请参阅 tzot 的 answer)。

    这是一个例子:

    import datetime
    import os
    import time
    import requests
    import email.utils as eut
    
    
    url = 'http://www.hamsterdance.org/hamsterdance/index-Dateien/hamster.gif'
    r = requests.get(url)
    f = open('output', 'wb')
    f.write(r.content)
    f.close()
    last_modified = r.headers['last-modified']
    modified = time.mktime(datetime.datetime(*eut.parsedate(last_modified)[:6]).timetuple())
    now = time.mktime(datetime.datetime.today().timetuple())
    os.utime('output', (now, modified))
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-09-26
      • 2017-12-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-27
      • 2012-04-15
      • 1970-01-01
      相关资源
      最近更新 更多