import pandas as pd
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from time import sleep
# Lê o arquivo CSV
contatos_df = pd.read_csv("C:/Users/luizc/OneDrive/Documents/Documentos/RobosApp/Robôs WhatsApp/Robô ativo/Arquivos originais - Robô ativo/Enviar.csv")
# Inicializa o navegador
service = Service(ChromeDriverManager().install())
driver = webdriver.Chrome(service=service)
driver.get('https://web.whatsapp.com/')
input("Pressione enter após fazer o scan do QR Code")
# Envia as mensagens
for i, mensagem in enumerate(contatos_df['Mensagem']):
pessoa = contatos_df.loc[i, "Pessoa"]
numero = contatos_df.loc[i, "Número"]
mensagem = contatos_df.loc[i, "Mensagem"]
# Acessa o perfil da pessoa
url = f'https://web.whatsapp.com/send?phone={numero}&text={mensagem}'
driver.get(url)
sleep(10) # espera a página carregar
KeyError Traceback (most recent call last)
~\anaconda3\lib\site-packages\pandas\core\indexes\base.py in get_loc(self, key, method, tolerance) 3801try:-> 3802return self._engine.get_loc(casted_key) 3803except KeyError as err:~\anaconda3\lib\site-packages\pandas\_libs\index.pyx in pandas._libs.index.IndexEngine.get_loc()~\anaconda3\lib\site-packages\pandas\_libs\index.pyx in pandas._libs.index.IndexEngine.get_loc()pandas\_libs\hashtable_class_helper.pxi in pandas._libs.hashtable.PyObjectHashTable.get_item()pandas\_libs\hashtable_class_helper.pxi in pandas._libs.hashtable.PyObjectHashTable.get_item()KeyError: 'Mensagem'
The above exception was the direct cause of the following exception:
KeyError Traceback (most recent call last)
~\AppData\Local\Temp\ipykernel_8340\3065382544.py in <module> 15 16# Envia as mensagens---> 17for i, mensagem in enumerate(contatos_df['Mensagem']): 18 pessoa = contatos_df.loc[i,"Pessoa"] 19 numero = contatos_df.loc[i,"Número"]~\anaconda3\lib\site-packages\pandas\core\frame.py in __getitem__(self, key) 3805if self.columns.nlevels >1: 3806return self._getitem_multilevel(key)-> 3807indexer = self.columns.get_loc(key) 3808if is_integer(indexer): 3809 indexer =[indexer]~\anaconda3\lib\site-packages\pandas\core\indexes\base.py in get_loc(self, key, method, tolerance) 3802return self._engine.get_loc(casted_key) 3803except KeyError as err:-> 3804raise KeyError(key)from err
3805except TypeError: 3806# If we have a listlike key, _check_indexing_error will raiseKeyError: 'Mensagem'
Tentei encontrar o erro pelo Chat GPT, mas não cheguei a raíz: ele acusou algumas possibilidades, como: erro de digitação na coluna, inexistência da coluna, coluna referenciada de forma errada, etc. Tudo isso está correto.
Mais uma coisa: usei a função print para verificar se a coluna aparece, e ela aparece.
Pergunta
Luiz Carlos F. Neto
Tenho o seguinte script:
import pandas as pd
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from time import sleep
# Lê o arquivo CSV
contatos_df = pd.read_csv("C:/Users/luizc/OneDrive/Documents/Documentos/RobosApp/Robôs WhatsApp/Robô ativo/Arquivos originais - Robô ativo/Enviar.csv")
# Inicializa o navegador
service = Service(ChromeDriverManager().install())
driver = webdriver.Chrome(service=service)
driver.get('https://web.whatsapp.com/')
input("Pressione enter após fazer o scan do QR Code")
# Envia as mensagens
for i, mensagem in enumerate(contatos_df['Mensagem']):
pessoa = contatos_df.loc[i, "Pessoa"]
numero = contatos_df.loc[i, "Número"]
mensagem = contatos_df.loc[i, "Mensagem"]
# Acessa o perfil da pessoa
url = f'https://web.whatsapp.com/send?phone={numero}&text={mensagem}'
driver.get(url)
sleep(10) # espera a página carregar
# Envia a mensagem
try:
botao_enviar = driver.find_element_by_xpath("//span[@data-icon='send']")
botao_enviar.click()
except:
pass
# Fecha o navegador
driver.quit()
Ele apresenta o seguinte erro:
Tentei encontrar o erro pelo Chat GPT, mas não cheguei a raíz: ele acusou algumas possibilidades, como: erro de digitação na coluna, inexistência da coluna, coluna referenciada de forma errada, etc. Tudo isso está correto.
Mais uma coisa: usei a função print para verificar se a coluna aparece, e ela aparece.
Alguém pode me ajudar?
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.