Мне нужно использовать запрос вызова для загрузки файла tar gz, я обнаружил, что request.get автоматически распаковывает файл, я пытался использовать решение, указанное здесь , но когда я пытаюсь распаковать его, используя tar говорит, что он не в формате gzip.
Я попробовал следующие подходы:
response = requests.get(url,auth=(user, key),stream=True)
if response.status_code == 200:
with open(target_path, 'wb') as f:
f.write(response.raw)
if response.status_code == 200:
with open(target_path, 'wb') as f:
f.write(response.raw)
raw = response.raw
with open(target_path, 'wb') as out_file:
while True:
chunk = raw.read(1024, decode_content=True)
if not chunk:
break
out_file.write(chunk)
Все вышеперечисленное при распаковке выдает ошибку:
$ tar -xvzf /tmp/file.tar.gz -C /
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
Примечание: невозможно использовать urllib.open , так как мне нужна аутентификация и т. Д., И я должен использовать библиотеку запросов