Jump to content

Robô ativo WhatsApp - Código não acusa erro quando roda, mas não executa comandos atribuídos Python


Luiz Carlos de Freitas Neto

Postagens Recomendadas

Tenho o seguinte código:

import pandas as pd

contatos_df = pd.read_excel("Enviar.xlsx")
display(contatos_df)

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
import time
import urllib

navegador = webdriver.Chrome()
navegador.get("https://web.whatsapp.com/")

while len(navegador.find_elements(by='id', value='side')) < 1:
    time.sleep(1)

# já estamos com o login feito no whatsapp web
for i, mensagem in enumerate(contatos_df['Mensagem']):
    numero = contatos_df.loc[i, "Número"]
    texto = urllib.parse.quote(f"{mensagem}")
    link = f"https://web.whatsapp.com/send?phone={numero}&text={texto}"
    navegador.get(link)
    time.sleep(5) # esperar 5 segundos para carregar a página
    while len(navegador.find_elements(by='id', value='side')) < 1:
        time.sleep(3)

    # verificar se número existe
    if len(navegador.find_elements(By.XPATH, '//*[@id="app"]/div/span[2]/div/span/div/div/div/div/div/div[1]')) < 1:
        mensagem_box = WebDriverWait(navegador, 10).until(EC.presence_of_element_located((By.XPATH, '//*[@id="main"]/footer/div[1]/div[2]/div/div[2]/button')))
        mensagem_box.send_keys(Keys.ENTER)
        time.sleep(10)  # esperar 10 segundos antes de enviar a próxima mensagem

 

A ideia do código é mandar mensagens automáticas por whatsapp através de contatos de uma tabela do excel. Quando rodava o código antes, ele enviava as primeiras mensagens e a tela ficava cinza depois. Agora, nem as primeiras mensagens ele está mandando!

Alguém consegue me ajudar? Detalhe: o código não dá erro dentro do Jupyter.

Segue print da tela cinza, como citei.

Sem título.png

Link to comment
Compartilhe em outros sites

  • Pessoal da TecnoSpeed

Olá @Luiz Carlos de Freitas Neto tudo bem?

Acredito que seu código não esteja entrando nas condições (IF) como deveria, a sugestão que lhe dou para lhe auxiliar a identificar os erros é adicionar prints nos IFS, por exemplo, dentro do IF adicionar um print('entrou na condição X') 

Pode parecer meio bobo, mas isso ajuda bastante para entender como esta a execução do seu código, identificando se está entrando nos IFs como deveria ou não.

Testa realizar isso e me diz se ajudou, caso contrario tentamos procurar outra alternativa. 👍

Link to comment
Compartilhe em outros sites

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.
É bem rápido!

Criar minha conta agora

Entrar

Você já tem uma conta?
Faça o login agora.

Entrar agora
  • Quem está online   0 Membros, 0 Anônimos, 15 Visitantes (Ver lista completa)

    • There are no registered users currently online


×
×
  • Create New...