CURL - запись в файл на Python - PullRequest
0 голосов
/ 15 мая 2019

Я работаю над проектом по преобразованию файла .sldprt в .obj, используя это руководство , используя скрипт Python. Последняя часть этого руководства посвящена загрузке преобразованного файла с серверов подделки на локальный компьютер. Этого легко добиться, используя следующую команду командной строки

sudo curl -X "GET" -H "Authorization: Bearer $TOKEN" -v "https://developer.api.autodesk.com/modelderivative/v2/designdata/$SURN/manifest/$OURN" -o $OUTFILE

$ TOKEN - токен доступа, $ OURN - выходной файл URN, а $ OUTFILE - имя выходного файла.

Чтобы выполнить то же самое с помощью скрипта Python, я попробовал следующее

### Downloaded the converted file
url =  BASE_URL + 'modelderivative/v2/designdata/' + urn + '/' + OURL
headers = {
'Authorization' : 'Bearer ' + ACCESS_TOKEN
}
with open(OUTPUT_FILE, 'w+') as f:
    r = requests.get(url, headers=headers, data=f)

Однако выходной файл всегда равен нулю байтов

Может кто-нибудь подсказать мне, как сделать то же самое, используя скрипт Python?

Ответы [ 2 ]

2 голосов
/ 15 мая 2019

Удалите data=f из вашего запроса и выполните f.write(r.text) после.

1 голос
/ 15 мая 2019

не похоже, что вы пишете в файл.попробуйте это,

### Downloaded the converted file
url =  BASE_URL + 'modelderivative/v2/designdata/' + urn + '/' + OURL
headers = {
'Authorization' : 'Bearer ' + ACCESS_TOKEN
}
with open(OUTPUT_FILE, 'w+') as f:
    r = requests.get(url, headers=headers, data=f)
    f.write(r.json())
...