【问题标题】:urllib get request with payloadurllib 获取带有有效负载的请求
【发布时间】:2017-03-06 12:03:38
【问题描述】:

我有一个使用requests 模块的python 代码。
我正在查询一些 api 以获取在response.content 中返回的文件

我的问题是,是否有任何方法可以在 将内容写入文件之前以字节计算内容。

我怀疑我有时会收到截断的数据,并且想过滤掉写入文件阶段,这也可能是一个问题。

【问题讨论】:

    标签: python python-2.7 python-requests


    【解决方案1】:
    import requests
    

    下面会得到头信息

    r = requests.head(url)
    

    这样您就可以访问这样的信息,例如:

    print r.headers
    {'accept-ranges': 'bytes',
    'cache-control': 'max-age=467354',
    'connection': 'keep-alive',
    'content-length': '37475248',
    'content-type': 'video/mp4',
    'date': 'Sun, 01 Sep 2013 07:26:21 GMT',
    'expires': 'Fri, 06 Sep 2013 17:15:35 GMT',
    'last-modified': 'Fri, 09 Aug 2013 18:51:33 GMT'}
    

    然后您可以找到您感兴趣的领域并执行以下操作

    file_size = r.headers.get('content-length')
    

    我相信这就是您要寻找的 - 然后您可以对所需的长度进行任何转换,以获得您所追求的尺寸信息。

    【讨论】:

    • header 中的大而内容长度将为您提供文件内容的长度(以字节为单位)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-01-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多