2011-05-19 17 views
5

¿Hay alguna manera de forzar un enlace de descarga en lugar de que el navegador intente abrir el archivo? En este caso, tengo una hoja de cálculo y algunos enlaces a archivos mp3. Quiero que los usuarios descarguen estos archivos en lugar de que el navegador los reproduzca. Los mp3 están alojados en otro sitio. Gracias, BoForzar enlace de descarga en una hoja de cálculo de Google Docs

+0

esto es como yihaaa !! –

+0

entonces nadie está interesado en este tipo de pregunta ¿eh? Debería ser –

Respuesta

10

Para hacer enlaces de descarga de documentos - https://docs.google.com/feeds/download/documents/Export?docID=yourDocId

Para hacer enlaces de descarga para cualquier archivo - https://docs.google.com/uc?id=yourDocId&export=download&hl=en_US

Para hacer enlaces de descarga de hojas de cálculo - https://spreadsheets.google.com/feeds/download/spreadsheets/Export?key=yourDocId&exportFormat=csv

Para más información, por favor vaya here


ACTUALIZACIÓN EN 2018

El nuevo URL de descarga es
  https://docs.google.com/spreadsheets/d/<KEY>/export?gid=<GID>&format=csv
donde <KEY> y <GID> se puede obtener de URL de su de navegación,
  https://docs.google.com/spreadsheets/d/<KEY>/edit#gid=<GID>

PS: hojas de cálculo pueden tener múltiples libros de trabajo, GID es el deseado ID del libro de trabajo. La hoja de cálculo de un libro generalmente tiene gid=0, pero si agrega más, tendrán números aleatorios (el GID se preselecciona, incluso cambiando el orden de las pestañas).

Por lo tanto, el uso de wget o curl puede probar,

wget --no-check-certificate -O test.csv \ 
    'https://docs.google.com/spreadsheets/d/0At2sqNEgxTf3dEt5SXBTemZZM1gzQy1vLVFNRnludHc/export?gid=0&format=csv' 
+1

Ese enlace para "descargar enlaces para cualquier archivo" está roto. ¿Actualizar? –

+0

¿Cómo se verían estos enlaces ahora? – Defozo

4

Para ampliar la respuesta de Mokarom (porque no puedo comentar) es necesario sustituir la parte de esos enlaces que dicen "yourDocId" con el ID de documento de la página que intentas descargar. Esta es la clave = parte de la url.

Por ejemplo, si tiene una hoja de cálculo en https://docs.google.com/spreadsheet/ccc?key=0AhjOs40Xk1-4dGg0MjMVYURPMFRpeUFhbmZBTkZ0dEE#gid=8, entonces vaya a https://spreadsheets.google.com/feeds/download/spreadsheets/Export?key=0AhjOs40Xk1-4dGg0MjMVYURPMFRpeUFhbmZBTkZ0dEE&exportFormat=csv para obtener el enlace de descarga.

0

En mi aplicación necesitaba descargar una hoja de cálculo de Google Drive en el formato de un archivo CSV (valores separados por comas). archivos de Google Drive son referenciados por mucho ID tales como:

1uFwmwD5UFLdD1DMPGT5p4fIGozfImx44DNCOeMJr1Lo

Aquí es un bloque de código que va a hacer esto. Si hay un error, el método devolverá una cadena de longitud cero.

- (NSString *) downloadGoogleSheetGivenFileID: (NSString *) ID { 
// This will download a Google spreadsheet given it's file ID 
// and convert it to a CSV file. 
NSString * preFix; 
NSURL  * myURL; 
NSString * opCmd; 
NSString * t; 
NSString * theStuff; 
NSError  * error = nil; 

theStuff = @""; 
// The URL has to be: prefix+ID+opCmd The only thing that changes is the file's ID 
preFix = @"https://spreadsheets.google.com/feeds/download/spreadsheets/Export?key="; 
opCmd = @"&exportFormat=csv"; 
t = preFix; 
t = [t stringByAppendingString:ID]; 
t = [t stringByAppendingString:opCmd]; 
myURL = [NSURL URLWithString:t]; 
theStuff = [NSString stringWithContentsOfURL:myURL encoding: NSUTF8StringEncoding error:&error]; 
if(error != nil) 
{ 
    // There was an error downloading the spread sheet file. 
    // We will return a zero length string. 
    NSLog(@"%@",error); 
} 
return theStuff; 

}

+0

Agrega etiquetas para que las personas interesadas sepan tu pregunta. – dosdebug

Cuestiones relacionadas