2017-09-27 171 views
1

我有一个简单的Python脚本,它应该从HTTP源读取文件并向另一个HTTP源发出PUT请求。同步读取并按块填写urllib2.urlopen

block_size = 4096 
file = urllib2.urlopen('http://path/to/someting.file').read(block_size)  
headers = {'X-Auth-Token': token_id, 'content-type': 'application/octet-stream'} 
response = requests.put(url='http://server/path', data=file, headers=headers) 

我该如何通过block_size(块)同步读取和放置该文件,而该块不是空的?

回答

0

你想做什么就叫做“流媒体上传”。尝试以下操作。

获取的文件流:

resp = requests.get(url, stream = True) 

然后张贴喜欢对象的文件:

requests.post(url, data= resp.iter_content(chunk_size= 4096))