Jump to content

Como resolver erro ao inserir data usando API Zoom Meeting em Python?


Postagens Recomendadas

Boa tarde, estou criando uma API em python para empresa que em resumo √© para automatizar¬† cria√ß√£o de reuni√Ķes, consiste em pegar dados de uma planilha e inserir automaticamente no site por√©m o c√≥digo da erro no momento de inserir¬† data ( anexarei m√©todo da data) o e-mail e senha que constam no 'c√≥digo √© ficticio'image.png

colocarei a disposição o código:

from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.service import Service
import time
import pandas as pd
from selenium.webdriver.common.keys import Keys
from selenium.webdriver import ActionChains
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

tabela = pd.read_excel("Pasta.xlsx")

driver = webdriver.Chrome()
service = Service(ChromeDriverManager().install())

navegador = webdriver.Chrome(service=service)
navegador.get('https://zoom.us/pt/signin#/login')
navegador.maximize_window()

navegador.find_element('xpath','//*[@id="email"]').send_keys('testecorepe@gmail.com')
navegador.find_element('xpath','//*[@id="password"]').send_keys('Cor&n5478')
navegador.find_element('xpath','//*[@id="js_btn_login"]/span').click()
time.sleep(5)

navegador.find_element('xpath','//*[@id="personal-nav-list"]/li[3]/a').click()
time.sleep(5)

navegador.find_element('xpath','//*[@id="app"]/div/div/div/div[4]/div/div[1]/div/button[1]/span').click()
time.sleep(5)

for linha in tabela.index:
    primeira_linha_topico = tabela.loc[1, 'topico']
    print(primeira_linha_topico)
    navegador.find_element('xpath','//*[@id="topic"]').send_keys(primeira_linha_topico)
    time.sleep(10)

    meeting_date = tabela.loc[1,'data']
    navegador.find_element('xpath','').click()
    wait = WebDriverWait(driver, 10)
    date_field = wait.until(EC.presence_of_element_located((By.ID, '//*[@id="mt_time"]')))
    date_field = driver.find_element(By.XPATH, '//*[@id="mt_time"]')
    date_value = meeting_date.strftime('%m/%d/%Y %H:%M')  # formatando a data para o formato MM/DD/YYYY HH:MM
    actions = ActionChains(driver)
    actions.move_to_element(date_field).click().perform()  # clicando no campo de data para abrir o seletor de data
    driver.execute_script("arguments[0].setAttribute('value', arguments[1])", date_field, date_value)  # inserindo a data diretamente no elemento
    time.sleep(5)

 

  • Curtir 1
Link to comment
Compartilhe em outros sites

Olá, Vamos analisar e corrigir o erro no código que está enfrentando ao tentar inserir a data.

A partir do c√≥digo fornecido, identifiquei algumas inconsist√™ncias que podem estar contribuindo para os problemas encontrados. Vou propor algumas altera√ß√Ķes para garantir que o c√≥digo funcione corretamente:

1. **Unifica√ß√£o de Inst√Ęncias do WebDriver**: Voc√™ inicializou o WebDriver duas vezes (com `webdriver.Chrome()` e novamente com `webdriver.Chrome(service=service)`). Isso n√£o √© necess√°rio e pode causar confus√£o. Vamos usar apenas uma inst√Ęncia.
2. **Seleção e Uso do WebDriver Correto**: Há uma mistura no uso de `driver` e `navegador` ao longo do código. Vamos manter apenas `navegador`.
3. **Localizador de Elemento de Data**: O XPath usado para localizar o campo de data est√° vazio e h√° confus√£o na forma de localizar elementos (`find_element`). Vou ajustar isso para a sintaxe atualizada e corrigir o localizador.

Aqui está o código corrigido com os ajustes mencionados:

from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.service import Service
import time
import pandas as pd
from selenium.webdriver.common.keys import Keys
from selenium.webdriver import ActionChains
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

# Carregar a planilha de dados
tabela = pd.read_excel("Pasta.xlsx")

# Configurar e iniciar o navegador
service = Service(ChromeDriverManager().install())
navegador = webdriver.Chrome(service=service)
navegador.get('https://zoom.us/pt/signin#/login')
navegador.maximize_window()

# Realizar o login
navegador.find_element(By.XPATH, '//*[@id="email"]').send_keys('testecorepe@gmail.com')
navegador.find_element(By.XPATH, '//*[@id="password"]').send_keys('Cor&n5478')
navegador.find_element(By.XPATH, '//*[@id="js_btn_login"]/span').click()
time.sleep(5)

# Acessar a p√°gina de cria√ß√£o de reuni√Ķes
navegador.find_element(By.XPATH, '//*[@id="personal-nav-list"]/li[3]/a').click()
time.sleep(5)
navegador.find_element(By.XPATH, '//*[@id="app"]/div/div/div/div[4]/div/div[1]/div/button[1]/span').click()
time.sleep(5)

# Criar reuni√Ķes com base nos dados da planilha
for linha in tabela.index:
    primeira_linha_topico = tabela.loc[linha, 'topico']
    navegador.find_element(By.ID, 'topic').send_keys(primeira_linha_topico)
    time.sleep(2)

    # Formatar e inserir a data da reunião
    meeting_date = tabela.loc[linha,'data']
    date_field = navegador.find_element(By.XPATH, '//*[@id="mt_time"]')
    date_value = meeting_date.strftime('%m/%d/%Y %H:%M')
    navegador.execute_script("arguments[0].setAttribute('value', '{}')".format(date_value), date_field)
    time.sleep(5)

Fa√ßa essas mudan√ßas e tente rodar o c√≥digo novamente. Se encontrar mais problemas ou tiver outras quest√Ķes, fico √† disposi√ß√£o para ajudar!

Editado por Jeremias Dev
  • Curtir 1
  • Ajudou! 1
Link to comment
Compartilhe em outros sites

  • Casa do Desenvolvedor mudou o t√≠tulo para Como resolver erro ao inserir data usando API Zoom Meeting em Python?

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


×
×
  • Create New...