Actualizar encuestas recogidas con Google Drive

modificar respuestas formulario google docs¿Has eliminado información de un formulario de Google Drive y los datos siguen apareciendo en el resumen de respuestas?

Hace casi dos años publicamos un script que permitía modificar los datos introducidos y que apareciesen reflejados en las estadísticas.

Desgraciadamente Google sigue sin incluir dicha funcionalidad en su herramienta y, tras las continuas peticiones de ayuda a través del soporte del blog he optado por mejorar el script en Python para que os resulte algo más cómodo su uso 😉

Mejoras

Se ha incluido

  1. obtención de los campos existentes en el formulario (evitando tener que inyectar jQuery en html para obtenerlos)
  2. edición del fichero CSV para evitar al usuario cambiar los nombres de los campos en la primera fila

Procedimiento

  1. Seguiremos los pasos 1 al 4 del artículo original para obtener el fichero CSV (y, opcionalmente, evitar que nadie pueda añadir nuevas respuestas mientras estamos haciendo labores de “mantenimiento” 😉 )
  2. Descargaremos el nuevo script python.
  3. Modificamos el script para indicar
    1. Url del formulario de Google Docs (recomiendo modificar únicamente el ID del formulario, dejando el resto de la dirección web intacta, especialmente el “formResponse” del final que no aparece en la url que has copiado del navegador 😉 )
    2. Ruta al fichero CSV con los datosedición de scripts en python
  4. Lanzaremos el script para que introduzca los datos en nuestro formulario web.

Misión cumplida

Sólo queda esperar que el script termine (esperemos que con éxito jeje).

Me alegra (y enorgullece) que, después de tanto tiempo (prácticamente 2 años), siga siendo de utilidad y que os animéis a contactar vía soporte técnico para comentar vuestras dudas y problemas puesto que

  • me ayuda a conocer los problemas que plantea
  • introducir mejoras como las presentadas en esta nueva versión

Desde aquí daros las gracias y animaros a seguir comentando todo aquello que consideréis que merece la pena mejorar.

27 comentarios en “Actualizar encuestas recogidas con Google Drive

  1. Carlos Guerrero dijo:

    Me a sido de mucha ayuda… Estaba haciendo una encuesta y un gracioso agrego 33 votos a una opción de la encuesta, gracias este post pude borrar esos datos y seguir con mi encuesta como si nada hubiera pasado 😀

  2. Francisco dijo:

    No se si tu script me podría servir, te explico mi problema, realicé un formulario con una cuenta de gmail, en principio no iba a ser nada importante pero luego comencé a aplicarle fórmulas, reglas y he realizado algo que realmente funciona, automatizado y sobre todo útil, sin embargo fui tan ingenuo que lo hice en mi drive personal y lo quiero trasladar a la cuenta de la empresa.

    Para ello he realizado una copia del formulario original a la cuenta de la empresa y claro, las respuestas del formulario se tornan a “0”.

    He obtenido la id del formulario y la he copiado dentro del script, he comprobado que al copiar la ruta en el navegador me salga la ventana de insertar una nueva entrada del formulario, ejecuté el script y comenzaron a salir los puntos, así que en principio la ejecución ha sido correcta pero el formulario sigue a 0, ¿alguna idea?

    Para llegar aquí me he tirado cerca de tres horas y media googleando y arreglando los mensajes de error que me salían, no tenía las librerías de request ni lxml, la versión de python que había instalado (la última), daba errores con tu script ya que por lo visto en esta versión había que poner paréntesis a los print o algo así, evidentemente no soy un hacha de la programación, lo que soy es cabezón pro, eso sí xD

    En fin, que cuando se han acabado los problemas y he visto que salían los puntitos ahora ya no se que hacer pues al no salirme ningún error no se como capear este problema.

    Saludos y muchas gracias por compartir conocimientos 😉

    • Nada como ser “cabezón” para que las cosas terminen funcionando 😉

      Voy a tener que actualizar el script a la última versión de Python y proporcionar un método que simplifique la instalación de dependencias (queda anotado para una futura versión, gracias)

      Respecto al problema ¿es posible que los cálculos afecten a la inserción de datos?

      Mis formularios son muchísimo más simples por lo que tendríamos que estudiarlo. Si te parece, contáctame a través del soporte técnico y hablamos ¿ok?

  3. Un Señor dijo:

    Hola, necesito tu ayuda
    Me quedé en el paso 4.
    Descargué el script y luego edité con el bloc de notas lo de Url del formulario de Google Docs.
    Hasta ahi todo bien, el problema que tengo es eso de la “Ruta al fichero CSV con los datos”
    Supongo que se refiere al FICHERO_DATOS=’./respuestas2.csv’ pero ¿Que pongo? ¿El nombre del archivo descargado del formulario? (Ejemplo: =’./EncuestaEcologica.csv’ ) ¿O la ubicación en donde se guardó? (Ejemplo: =’C:\Users\NombreUsuario-PC\Downloads’)

    Bueno hice eso, le di guardar y como no podía abrirlo (para ejecutarlo) tuve que descargar el python. Luego de descargarlo me permitía abrirlo pero se cerraba al instante y me salía de error :

    File “C:\Users\NombreUsuario-PC\Downloads\update_google_drive_form_v2.=.py” line 34. in
    Import request
    ImportError: no module named request

    Desde ya gracias por la ayuda.

  4. Compañero! muchas gracias ante todo… pero una te hago una observación para que a nadie le vuelva a doler la cabeza como a mi. Creo que no se menciona, ni en este post, ni en el que escribiste hace dos años, que el formulario en cuestión NO PUEDE ESTAR DIVIDIDO EN PÁGINAS, ya que el script no pulsa en el botón “continuar”, lógicamente… una obviedad que me ha hecho perder casi una hora buscando el fallo (gajes del oficio…)

  5. Antoni dijo:

    Hola, hemos instalado el Python 2.7.10 luego hemos instalado el python request y pip correctamente.

    Intentamos volcar el script modificando solo el ID del formulario y la ruta del CSV y no da ningun error pero tampoco hace nada.

    La ruta del CSV tiene que estar en alguna carpeta en especifico ( ya que pones “./” o podria ponerlo en la “c:\nombre.csv”

    gracias

  6. Brian A Gómez D dijo:

    Buenos días. Esta es la solución que estaba buscando. Sin embargo, al realizar el proceso no sé como correr el script. La verdad no se nada de programación y seguí las instrucciones pero llegué hasta ese punto.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s