获取请求期间的字节数

时间:2018-03-09 10:39:39

标签: python python-3.x request python-requests

在python中,我想在请求期间恢复字节数。

我做了类似的事情(带有请求模块):

r = requests.get("https://google.fr/")

不是这样,但这看起来像。我想知道请求需要多少字节并返回。

谢谢!

3 个答案:

答案 0 :(得分:0)

此处显示的请求文档中对此进行了描述

http://docs.python-requests.org/en/master/user/advanced/

但要小心你的例子。 python和请求一般都有SSL证书的问题。所以上面的

r=requests.get("https://google.fr/")

会给你

SSLError: ("bad handshake: Error([('SSL routines', 'ssl3_get_server_certificate', 'certificate verify failed')],)",)

你可以做到

r=requests.get("https://google.fr/",verify=False)

不推荐......但是至少你会得到一些东西 但是对于上述网站,您将无法在r.headers中获得良好的内容长度值。也许是一些谷歌特定的问题。

无论如何

len(r.content)
如果'内容长度'

应该给你字节对象的长度。缺少

如果您使用http,它将起作用

r=requests.get("http://google.fr")
r.headers['Content-Length']

你会得到'5433'或类似的东西  而是在http://httpbin.org

上尝试各种请求
r=requests.get("http://httpbin.org/get")
r.headers['Content-Length']

您将获得256

是返回的字节大小

有关发送到服务器的请求的信息,请使用

r.requests.headers

答案 1 :(得分:0)

我找到了!只是len(r.content)^^感谢所有人!

答案 2 :(得分:0)

以下代码适用于https:

import requests

url = 'https://google.fr/'

# use the 'auth' parameter to send requests with HTTP Basic Auth:
r = requests.get(url, auth=('user', 'pass'))

a = len(r.content)
print(a)