jediael.reis Postado Julho 1, 2022 Compartilhar Postado Julho 1, 2022 Entrei esse mundo há 4 meses, e estou estudando e fazendo uma integração. Sei que tenho pouco conhecimento, mas estou fazer algumas integrações já, mas deis de ontem estou brigando com o código... Estou pegando as Apis do Google WorkSpace e fazendo com o ClassRoom.. Existe alguma forma de deixar mais rápido ?? peguei vários dados do Classroom e joguei no google Planilhas, mas isso demorou 3 horas e 40min e deu 10mil linhas. qualquer coisa posso compartilhar um pedaço do codigo para voces compreenderem. Obrigado Link to comment Compartilhe em outros sites Outras opções de compartilhamento...
jediael.reis Postado Julho 1, 2022 Autor(a) Compartilhar Postado Julho 1, 2022 (editado) from __future__ import print_function from dis import dis from email.charset import add_charset from inspect import isdatadescriptor import os.path from tkinter import ACTIVE from turtle import st from autenticação import Autenticacao from google.auth.transport.requests import Request from google.oauth2.credentials import Credentials from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.discovery import build from googleapiclient.errors import HttpError import time lista_ids_curso = [] def main(): serviceclass = Autenticacao().serviceclass servicework = Autenticacao().servicework servicesheets = Autenticacao().servicesheets page_token = None while True: response = serviceclass.courses().list(courseStates='ACTIVE', pageSize=0, pageToken=page_token).execute() page_token = response.get('nextPageToken', None) dic_cursos = response['courses'] for dados_cursos in dic_cursos: lista_ids_curso.append(dados_cursos['id']) if not page_token: break contador = 2 for ids_cursos in lista_ids_curso: pegar_materiais = serviceclass.courses().courseWorkMaterials().list(courseId=ids_cursos).execute() try: dados_materiais = pegar_materiais['courseWorkMaterial'] for dic_courseWorkMaterial in dados_materiais: curso_id = dic_courseWorkMaterial['courseId'] id_material = dic_courseWorkMaterial['id'] status = dic_courseWorkMaterial['state'] data_criacao = dic_courseWorkMaterial['creationTime'] titulo = dic_courseWorkMaterial['title'] descricao = dic_courseWorkMaterial['description'] horas_aula = descricao[:3] ## Pegar taxonomias ## try: primeiro_colchete =(descricao.index('(')) teste_col = primeiro_colchete+1 segundo_colchete = (descricao.index(')')) taxonomia = descricao[teste_col:segundo_colchete] except ValueError: pass id_topico = dic_courseWorkMaterial['topicId'] id_professor = dic_courseWorkMaterial['creatorUserId'] ## Pegar nome professor ## pegar_professores = servicework.users().get(userKey=id_professor).execute() dic_name = pegar_professores['name'] nome_professor = dic_name['fullName'] email_professor = pegar_professores['primaryEmail'] ## Pegar nome tópicos ## pegar_topicos = serviceclass.courses().topics().get(courseId=curso_id, id=id_topico).execute() nome_topico = pegar_topicos['name'] ##### sheets ##### print(contador) ID_PLANILHA = 'ID CODIGO' teste1 = str(contador) range = 'materiais_teste!A' + teste1 body = [[curso_id, id_material, status, data_criacao, titulo, descricao, horas_aula, taxonomia, id_topico, id_professor, nome_professor, email_professor, nome_topico]] servicesheets.spreadsheets().values().update(spreadsheetId=ID_PLANILHA, range=range, valueInputOption='USER_ENTERED', body={'values': body}).execute() contador += 1 time.sleep(0.3) except KeyError: pass main() Editado Julho 1, 2022 por jediael.reis Link to comment Compartilhe em outros sites Outras opções de compartilhamento...
jediael.reis Postado Julho 1, 2022 Autor(a) Compartilhar Postado Julho 1, 2022 os codigos em AMARELO sao os dados que preciso que vá para a planilha Link to comment Compartilhe em outros sites Outras opções de compartilhamento...
Postagens Recomendadas
Crie uma conta ou entre para comentar 😀
Você precisa ser um membro para deixar um comentário.
Crie a sua conta
Participe da nossa comunidade, crie sua conta.
Criar minha conta agoraÉ bem rápido!
Entrar
Você já tem uma conta?
Entrar agoraFaça o login agora.