Пример #1
0
def get_moodle(user):
    session = get_session(user.sapu_username, user.sapu_password)
    historico = session.get("https://sapu.ucpel.edu.br/engine.php?class=LoginMoodle&method=index", headers=headers(), proxies=proxies())
    soup = BeautifulSoup(historico.content, 'html.parser')
    if not str(soup.find('script').get_text().lstrip()).split("'")[1] == "Erro":
        index = soup.find('script')
        return messages.formata_moodle(str(index.get_text().lstrip()).split("'")[1])
    else:
        msg = messages.perfil_errado(user.first_name)
    return msg
Пример #2
0
def get_boleto(user):
    session = get_session(user.sapu_username, user.sapu_password)
    boleto = session.get("https://sapu.ucpel.edu.br/engine.php?class=EmitirBoletoFormList", headers=headers(), proxies=proxies())
    soup = BeautifulSoup(boleto.content, 'html.parser')
    if not str(soup.find('script').get_text().lstrip()).split("'")[1] == "Erro":
        try:
            index = soup.find(class_='tdatagrid_body').find_all('td')[1].find('a')
            url = util.find_between(str(index), "href=\"", "\">")
            boleto = session.get("https://sapu.ucpel.edu.br/engine.php?class=EmitirBoletoFormList&method=onBoleto&target=1&key={}".format(url.split("key=")[1]), headers=headers(), proxies=proxies())
            soup = BeautifulSoup(boleto.content, 'html.parser')
            index = soup.find_all(language="JavaScript")
            return str(index[2].get_text().lstrip()).split("'")[1], True
        except:
            return "Você não possui boletos em aberto", False
    else:
        msg = messages.perfil_errado(user.first_name)
        return msg, False
Пример #3
0
def get_curriculo(user):
    session = get_session(user.sapu_username, user.sapu_password)
    curriculo = session.get("https://sapu.ucpel.edu.br/engine.php?class=MatrizCurricularFormList", headers=headers(), proxies=proxies())
    soup = BeautifulSoup(curriculo.content, 'html.parser')
    if not str(soup.find('script').get_text().lstrip()).split("'")[1] == "Erro":
        tdatagrid_body = soup.find(class_='tdatagrid_body')
        semestres = []
        msg = "<b>Matriz Curricular</b>"
        for index in tdatagrid_body.find_all(class_='tdatagrid_group'):
            semestres.append([index.get_text().lstrip()[:-1], util.find_between(str(index), 'level="', '">')])
        for semestre, i in semestres:
            msg += "\n\n<b>{}</b>".format(str(semestre).capitalize())
            for index in tdatagrid_body.find_all(childof=i):
                materia, ch, link = util.formata_curriculo(index, session)
                msg += messages.formata_curriculo(materia, ch, link)
    else:
        msg = messages.perfil_errado(user.first_name)
    return msg
Пример #4
0
def get_emails(user, args):
    session = get_session(user.sapu_username, user.sapu_password)
    historico = session.get("https://sapu.ucpel.edu.br/engine.php?class=MensagemForm&method=inbox", headers=headers(), proxies=proxies())
    soup = BeautifulSoup(historico.content, 'html.parser')
    if not str(soup.find('script').get_text().lstrip()).split("'")[1] == "Erro":
        table = []
        td = []
        count = 0
        for index in soup.find('table').find_all('td'):
            if index.get_text().lstrip():
                td.append(index.get_text().lstrip())
                count += 1
            if count > 2:
                table.append(td)
                count = 0
                td = []
        msg = util.formata_email(table, args)
    else:
        msg = messages.perfil_errado(user.first_name)
    return msg
Пример #5
0
def get_horarios(user):
    session = get_session(user.sapu_username, user.sapu_password)
    horarios = session.get("https://sapu.ucpel.edu.br/engine.php?class=HorarioFormList", headers=headers(), proxies=proxies())
    soup = BeautifulSoup(horarios.content, 'html.parser')
    if not str(soup.find('script').get_text().lstrip()).split("'")[1] == "Erro":
        tdatagrid_body = soup.find(class_='tdatagrid_body')
        dias = []
        msg = "<b>Horários</b>"
        for index in tdatagrid_body.find_all(class_='tdatagrid_group'):
            dias.append([index.get_text().lstrip()[:-1], util.find_between(str(index), 'level="', '">')])
        for dia, i in dias:
            msg += "\n\n<b>{}</b>".format(str(dia).capitalize())
            for index in tdatagrid_body.find_all(childof=i):
                materia, inicio, fim, predio, sala = util.formata_horarios(index)
                msg += messages.formata_horario(materia, inicio, fim, predio, sala)
        if not dias:
            msg = messages.horarios_empty(user.first_name)
    else:
        msg = messages.perfil_errado(user.first_name)
    return msg
Пример #6
0
def get_disciplinas(user):
    session = get_session(user.sapu_username, user.sapu_password)
    disciplinas = session.get("https://sapu.ucpel.edu.br/engine.php?class=MatriculaFormList", headers=headers(), proxies=proxies())
    soup = BeautifulSoup(disciplinas.content, 'html.parser')
    if not str(soup.find('script').get_text().lstrip()).split("'")[1] == "Erro":
        tdatagrid_body = soup.find(class_='tdatagrid_body')
        table = []
        td = []
        count = 0
        for index in tdatagrid_body.find_all('td'):
            td.append(index.get_text().lstrip())
            count += 1
            if count == 5:
                table.append(td)
                td = []
                count = 0
        msg = util.formata_disciplinas(table)
        if not table:
            msg = messages.disciplinas_empty(user.first_name)
    else:
        msg = messages.perfil_errado(user.first_name)
    return msg