Ciao!
Ho una domanda su come posso caricare un file utilizzando Python3. Ho provato a fare qualcosa di simile, ma ricevo ancora un errore.
> import requests
headers = {
'content-type': 'multipart/form-data', #application/x-www-form-urlencoded ??
'Api-Key': 'MyWorkingKey',
'Api-Username': 'discourseAdmin',
}
URL = "https://discourse.com/uploads.json"
content = open('FULL_PATH_TO/avatar.jpg', 'rb').read()
data={"type": "avatar",'files[]': ('avatar.jpg', content, 'image/jpeg')}
requests.post(URL, headers=headers, data=data)
*Codice di stato: 422*
*Testo di risposta: '{"failed":"FAILED","message":"undefined method `tempfile\' for \\"avatar.jpg\\":String"}'*
Ho caricato il file tramite questo curl:
curl -X POST https://discourse.com/uploads.json \
-H "content-type: multipart/form-data;" \
-H "Api-Key: MyWorkingKey" \
-H "Api-Username: discourseAdmin" \
-F "type=avatar" \
-F "files[]=@FULL_PATH_TO/avatar.jpg"
Purtroppo non sono riuscito a convertire questo comando curl in Python.