Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

'NoneType' object has no attribute 'group' #197

Closed
pedroribbe opened this issue Oct 14, 2022 · 5 comments
Closed

'NoneType' object has no attribute 'group' #197

pedroribbe opened this issue Oct 14, 2022 · 5 comments

Comments

@pedroribbe
Copy link

Olá! tudo bom?

Primeiramente, parabéns pelo pacote! Achei maravilhoso!

O meu problema está na hora de puxar a fatura do cartão de crédito.. Estou entrando ainda nessa área de programação, mas entendi que seu código faz um web scrapping da pagina do Itau para colher as informações. Dito isso, o site do itau aparentemente teve uma atualização e por isso pode ser a causa desse meu problema (título do issue). Abaixo, coloquei a mensagem do jupyter notebook.

Vi que, na pagina da fatura, possui uma table class que seria basicamente a fatura do mês que eu precisava ver.

pages.py:139, in MenuPage.checking_cards_op(self)
137 @Property
138 def checking_cards_op(self):
--> 139 return re.search(
140 r'urlBox : "([^"]+)"[\n\t\r\s,]*seletorContainer : "#boxCartoes",',
141 self._text,
142 flags=re.DOTALL,
143 ).group(1)

AttributeError: 'NoneType' object has no attribute 'group'

Eu antes tive o mesmo issue na class CardDetails, que segue abaixo:

class CardDetails(TextPage):
@Property
def full_invoice_op(self):
return re.search(
r'if (habilitaFaturaCotacaoDolar === "true") '
r'{[\n\t\r\s]+urlContingencia = "([^"]+)"',
self._text,
flags=re.DOTALL,
).group(1)

Abs!

@lucasrcezimbra
Copy link
Owner

Opa. Valeu, @pedroribbe.

Eu não tenho cartão de crédito do Itaú, então não consigo reproduzir o problema.

Se você conseguir adicionar aqui na issue o valor que tem nas variáveis self._text que ficam dentro desses métodos que estão falhando, eu consigo investigar o problema. Não esqueça de remover todas as informações pessoais e identificadores antes de colar aqui.

@andreroggeri
Copy link
Contributor

@lucasrcezimbra parece que ele está esperando que o guardião esteja instalado.

Talvez se trocaramos o user agent consigamos pular isso.

Conteúdo do self._text






		<style>.accordion .accordion__icon i{display: none !important}</style>
		<div class="row clearfix" role="main">
	<h1 class="margem-esquerda20">Guardi&atilde;o Ita&uacute; 30 horas</h1>
	<div class="col8 box-info box-info-alerta">
		<span class="icone"></span>
				<p>Por medida de seguran&ccedil;a, para fazer essa transa&ccedil;&atilde;o na internet voc&ecirc; precisa instalar o app Ita&uacute; no computador ou o guardi&atilde;o Ita&uacute; 30 horas. Confira as instru&ccedil;&otilde;es.</p>
	</div>
	
	
            <div class="margem-esquerda15 margem-baixo50 col8">
                <div class="accordion" role="presentation" >
                    <div role="heading" aria-level="2">
                        <button aria-expanded="false" class="accordion__trigger" aria-controls="sect9" id="accordion9id" type="button">
                            <span class="accordion-title">Guardi&atilde;o Ita&uacute; 30 horas</span>
                            <span class="accordion__icon" aria-hidden="true">
                                <i class="icon-itaufonts_seta_down"></i>
                            </span>
                        </button>
                    </div>
                    <div id="sect9" aria-labelledby="accordion9id" class="accordion__panel" hidden>
			<div class="grid-row">
                            <div class="grid-col1" aria-hidden="true">
                                <span class="ico ico-seguranca" style="margin: auto; float: none;"></span>
				</div>

                            <div class="grid-col10 margem-esquerda10">
					<p>O Guardi&atilde;o Ita&uacute; 30 horas &eacute; um dispositivo obrigat&oacute;rio que lhe
						dar&aacute; ainda mais seguran&ccedil;a para realizar suas transa&ccedil;&otilde;es na
						internet.</p>
					<ul class="bullet">
						<li>Atua como uma blindagem em sua conta contra programas
							maliciosos;</li>
						<li>&Eacute; ativado toda vez que voc&ecirc; acessa o Ita&uacute; na internet;</li>
						
						<li>N&atilde;o solicita o c&oacute;digo de seguran&ccedil;a iToken durante a instala&ccedil;&atilde;o.</li>
					</ul>
                                <a href="https://guardiao.itau.com.br/warsaw/warsaw_setup_64.deb" class="itau-button margem-cima10" role="button">instalar</a>
                                <a href="http://itau.com.br/guardiao/" id="saibaIdGuardiao" class="margem-esquerda40">saiba mais</a>
				</div>
				</div>
			</div>
			</div>
		</div>
	</div>			
<script>
    $(".accordion").itauAccordion();
	$(document).ready(function() {
		// Bloqueia botoon Continuar
		$('#btn-continuar').addClass('desabilitado'); 
	});
</script>

@andreroggeri
Copy link
Contributor

Tentei aqui mas não deu certo =[

@ivancrneto
Copy link
Contributor

@andreroggeri @pedroribbe @lucasrcezimbra talvez essa PR resolva o problema: #205

@lucasrcezimbra
Copy link
Owner

O PR do @ivancrneto resolveu o problema. Mergeado em #209. Vou fazer um novo release com o fix ainda essa semana.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants