Sto provando a convertire il PDF in qualsiasi formato consentito, ma la risposta non include i collegamenti exportLink dopo il caricamento di un file PDF.Converti PDF in qualsiasi file con l'API di Google Drive
Ho già provato molti modi per gestire per ottenere exportLinks. Altri formati doc possono essere caricati ed esportati con successo. Ho usato il codice di developers.google.com.
media_body = MediaFileUpload(filename, mimetype=mime_type, resumable=False)
body = {'title': title,
'description': description,
'mimeType': mime_type,
}
# Set the parent folder.
if parent_id:
body['parents'] = [{'id': parent_id}]
try:
request = service.files().insert(body=body, media_body=media_body)
#request.uri = "%s&convert=true&ocr=true" % request.uri
#request.uri = "%s&convert=true" % request.uri
request.uri = "https://www.googleapis.com/upload/drive/v2/files?uploadType=multipart&alt=json&convert=true"
logger.debug("Request: %s", request.uri)
file_obj = request.execute()
# Uncomment the following line to print the File ID
# print 'File ID: %s' % file_obj['id']
import json
logger.debug('Get file result: %s' % json.dumps(file_obj, indent=4))
return file_obj
...
export_links = source_file.get('exportLinks')
if not export_links:
logger.debug('Warning: exportLinks does not exist')
Perché non vi sono collegamenti di esportazione nella risposta del caricamento del PDF?
Per favore, il team di Google accetta che il PDF possa essere caricato ed esportato dall'API di Drive.
Grazie
[UPD] Ecco una discarica richiesta del httplib2. Come vedo la query è impostata correttamente in base al manuale.
Request: https://www.googleapis.com/upload/drive/v2/files?uploadType=multipart&alt=json&convert=true
send: 'POST /upload/drive/v2/files?uploadType=multipart&alt=json&convert=true HTTP/1.1\r\n
Host: www.googleapis.com\r\n
content-length: 4425\r\n
accept-encoding: gzip, deflate\r\n
accept: application/json\r\n
user-agent: google-api-python-client/1.0\r\n
content-type: multipart/related; boundary="===============0758269123680398078=="\r\n
authorization: Bearer ya29.AHES6ZRDT0AJX8a5JN_u_0epF6ZCMGcqwyru1wzj22oVlMO9CfmFzlo\r\n
\r\n
--===============0758269123680398078==\nContent-Type: application/json\nMIME-Version: 1.0\n\n{"mimeType": "application/pdf", "description": "", "title": "Short_pdf.pdf"}\n--===============
Ecco un Downloadlink nella risposta: "downloadURL": "https://doc-0c-2c-docs.googleusercontent.com/docs/securesc/2sgoib42bclb5coaj85g5574fd2b65bn/2lnqk989jdaepp4b8igdco1j8fu7m9l3/1373040000000/00639208221381605991/00639208221381605991/0By108D1dgCDkX0NFOXV0V2pNd2s?h=16653014193614665626&e=download&gd=true",
La risposta contiene un collegamento per il download? Se è così, la conversione non ha avuto luogo. Inoltre, si prega di impostare parametri di query passando parametri per inserire il metodo: '.insert (body = b, media_body = m, convert = True)' –
Ho aggiornato il post. Si prega di ispezionare ciò che è sbagliato con la richiesta. Inoltre, ho provato come hai suggerito di passare convert param - nessun successo. L'intestazione della richiesta è la stessa dell'aggiornamento. Suppongo tu intenda che il link per il download sia "downloadUrl". Grazie –