Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何更改请求头_Python_Flask_Python Requests - Fatal编程技术网

Python 如何更改请求头

Python 如何更改请求头,python,flask,python-requests,Python,Flask,Python Requests,如何设置请求头?我正在从instagram下载图像,我想更改其文件名,获取文件大小。有这么多请求头 这就是我到目前为止所做的 import requests @app.route('/try') def trial(): img = 'https://igcdn-photos-e-a.akamaihd.net//hphotos-ak-xaf1//t51.2885-15//e35//12093691_1082288621781484_1524190206_n.jpg' img

如何设置请求头?我正在从instagram下载图像,我想更改其文件名,获取文件大小。有这么多请求头

这就是我到目前为止所做的

import requests   
@app.route('/try')
def trial():
    img = 'https://igcdn-photos-e-a.akamaihd.net//hphotos-ak-xaf1//t51.2885-15//e35//12093691_1082288621781484_1524190206_n.jpg'
    imgData = requests.get(img)
    return imgData        # this gives me error: Response object is not callable
编辑:我想设置内容处置标题。另一个问题:当我设置标题时,如何将图像提供给客户端


我在互联网上读到,要将文件发送到客户端,我应该设置请求头。但是如何发送文件是我的另一个问题?很抱歉在同一个

中问了另一个问题。您所问的问题与Flask无关。Flask是一个web框架。请求是一个HTTP库,它将帮助解决您的问题

您只需要使用头创建一个dict(key:value对,其中key是头的名称,value是对的值),然后将该dict传递给
.get
方法上的headers参数

headers = {'Content-Type': 'text/plain'}
r = requests.get('http://example.com', headers=headers)
如果希望检查发送请求时设置的标头值,则可以执行以下操作:

print r.headers
print r.headers['Content-Type']  # Output - 'text/html'
你会得到这样的回答

{'content-length': '73921', 'last-modified': 'Fri, 30 Oct 2015 15:18:29 GMT', 'connection': 'keep-alive', 'cache-control': 'max-age=1209600', 'date': 'Wed, 18 Nov 2015 08:44:15 GMT', 'access-control-allow-origin': '*', 'content-type': 'image/jpeg', 'timing-allow-origin': '*'}

你可以得到标题。。。查看
内容长度
。我相信你不会得到这个文件名,因为
内容配置
不在那里。因此,请尝试其他方法获取文件名。

请注意,请求头不会告诉您任何有关响应文件大小或文件名的信息。@MartijnPieters-您是对的。OP的问题不清楚。但请检查问题的编辑。特别是最后一行,很明显。。。他想要的是
文件名
文件大小
,根据我的回答,编辑成这样…谢谢你的即时回复。我可以设置
内容处置
标题吗?@sap我想我们不能。。。因为它是instagram的maybe@sap但是你可以得到文件名。。它在URL中。。。对吗?请您签出已编辑的问题。我想将文件发送到客户端,那么是否可以这样做?我该怎么走further@sap我不太清楚。。首先,你从instagram获得了文件。现在你想把它送到哪里?你需要在你的问题上更清楚;您的示例代码缺少Flask请求处理程序(
@app.route()
decorator加上相应的函数)。请完整描述您的问题:我正在尝试使用
请求下载一个图像,然后使用Flask提供它,然后包括一个演示您所取得进展的最小Flask应用程序。
{'content-length': '73921', 'last-modified': 'Fri, 30 Oct 2015 15:18:29 GMT', 'connection': 'keep-alive', 'cache-control': 'max-age=1209600', 'date': 'Wed, 18 Nov 2015 08:44:15 GMT', 'access-control-allow-origin': '*', 'content-type': 'image/jpeg', 'timing-allow-origin': '*'}