En este artículo, discutiremos cómo recopilar datos de los formularios de Google usando Pandas.
Módulos necesarios
- pydrive: se utiliza para simplificar muchas tareas comunes de la API de Google Drive. Para instalar este tipo, escriba el siguiente comando en la terminal.
pip install pydrive
- xlrd: este módulo se utiliza para extraer datos de una hoja de cálculo. Para instalar este tipo, escriba el siguiente comando en la terminal.
pip install xlrd
- openpyxl : esta es una biblioteca de Python para leer y escribir Excel. Para instalar este tipo, escriba el siguiente comando en la terminal.
pip install openpyxl
Empezando
La primera parte importante de todo el proceso es crear un Formulario de Google. Visita este enlace y crea un nuevo formulario.
Cuando hayamos terminado de configurar las preguntas, haga clic en el botón Enviar para publicar el formulario. Para acceder a este formulario de Google, haga clic aquí.
El siguiente paso es autenticar nuestra secuencia de comandos de Python y el entorno local con Google y acceder a los datos del formulario de Google desde Google Drive habilitando la API de Google Drive en Google Cloud Platform. Sigue estos pasos:
- Ir al formulario de Google
- Pestaña de respuestas,
- Haga clic en el icono de la hoja de cálculo
- Y cree una nueva hoja de cálculo de destino para nuestro formulario de Google.
Esta hoja de cálculo se creará y almacenará en Google Drive. Tenemos que integrar Google Drive y Python Environment. Primero, tenemos que autenticarnos con Google.
Autenticación de la API de Google Drive
Ahora, para trabajar con la API de Google Drive, debemos configurar nuestra cuenta, habilitar la API de Google Drive y obtener nuestra clave client_secrets.json .
1. Vaya a Google Cloud Platform Console , haga clic en Nuevo proyecto/Proyectos → Nuevo proyecto, en la barra de herramientas de GCP.
2. Introduzca un nombre para nuestro proyecto y haga clic en Crear.
3. En la pantalla de inicio de nuestro proyecto, haga clic en la barra de navegación en la esquina superior izquierda y haga clic en API y servicios, y seleccione la pantalla de consentimiento de OAuth.
4. En la página de inicio de la pantalla de consentimiento de OAuth, seleccione Externo y haga clic en Crear
5. En la siguiente pantalla, ingrese los detalles obligatorios que incluyen el nombre de la aplicación, el correo electrónico de soporte al usuario y la información de contacto del desarrollador. Haga clic en «Guardar y continuar» y vaya a la página de resumen.
6. En la pantalla Resumen, haga clic en «Volver al panel». Ahora tendremos una opción para Publicar nuestra aplicación. Ahora estamos listos para enviar nuestra aplicación a producción.
7. Ahora que hemos publicado nuestra aplicación, haga clic en la barra de búsqueda y busque la API de Google Drive. Seleccione la API de Google Drive y habilite el Servicio.
8. Ahora que hemos publicado nuestra aplicación y habilitado la API de Google Drive, haga clic en la barra de navegación y, en API y servicios, seleccione Credenciales.
9. En la pantalla de ID de cliente de OAuth, seleccione el tipo de aplicación como aplicación de escritorio, ingrese el nombre y haga clic en Crear.
9. Seremos redirigidos a la página de inicio de credenciales donde podremos encontrar nuestra ID de cliente de OAuth. Haga clic en la opción Descargar clave y guarde el archivo .JSON con el nombre client_secrets.json
Nota: esta clave secreta y el archivo de Python creado a continuación deben estar presentes en el mismo directorio.
Implementación de Python:
Python3
from pydrive.auth import GoogleAuth from pydrive.drive import GoogleDrive import pandas as pd # Initializing a GoogleAuth Object gauth = GoogleAuth() # client_secrets.json file is verified # and it automatically handles authentication gauth.LocalWebserverAuth() # GoogleDrive Instance is created using # authenticated GoogleAuth instance drive = GoogleDrive(gauth) # Initialize GoogleDriveFile instance with file id file_obj = drive.CreateFile({'id': 'FILE_ID'}) file_obj.GetContentFile('FILE_NAME.xls', mimetype='application/vnd.openxmlformats-officedocument.spreadsheetml.sheet') dataframe = pd.read_excel('FILE_NAME.xls') print(dataframe)
Nota: Las cuentas de Google utilizadas para la creación de formularios de Google y la autenticación GDrive del entorno de Python deben ser las mismas
Cuando ejecutamos el código, aparece una ventana de flujo de autenticación de Google en nuestro navegador web predeterminado. Tenemos que seleccionar nuestra Cuenta de Google y Continuar con el Flujo.
Tenemos que permitir el permiso y nuevamente hacer clic en Permitir en la pantalla siguiente.
Ahora recibiremos un mensaje en nuestro navegador que dice “ El flujo de autenticación se ha completado”. Y pasar a nuestro entorno de Python, podremos ver los datos en formato Pandas Dataframe.
Producción:
Publicación traducida automáticamente
Artículo escrito por therealnavzz y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA