Skip to content

Projeto previsão tempo mais completo. #4

Description

@chinayder15

Importações de blicliotecas

from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
import time
from selenium.webdriver.common.keys import Keys

JS_ADD_TEXT_TO_INPUT = """
var elm = arguments[0], txt = arguments[1];
elm.value += txt;
elm.dispatchEvent(new Event('change'));
"""

browser = webdriver.Chrome(ChromeDriverManager().install())
browser.get('https://web.whatsapp.com/') #abre o site Whatsapp Web
time.sleep(15) #da um sleep de 15 segundos, tempo para scannear o QRCODE

#Importações de bibliotecas.

from datetime import datetime
#Importação da previsão do tempo junto com codigo de API PYOWM
import pyowm
#Importação de verificação do selenion e também do dia
from selenium import webdriver
import time
data= datetime.today()
from datetime import date
import sys
sys.platform
import os
import clipboard
import pyautogui

owm = pyowm.OWM('f962eb0dbbd5934cf6c45606da7997ba')
city = ('Petrópolis','Br')
loc = owm.weather_manager().weather_at_place('Petropolis,BR')
weather = loc.weather
temp = weather.temperature(unit='celsius')
status = weather.detailed_status
cleaned_temp_data = (int(temp['temp']))

#Fala sobre chuva ou sol e vento

print('O dia hoje teremos', status, '.')

if 'rain' in status or 'thunderstorm' in status or 'drizzle' in status or 'clouds':
emogtemp = ('❄️🌨️🌧🥶')
# print(emogtemp)
else:
emogtemp= ('☀️🌤️⛅')
# print(emogtemp)

dataFormatada = data.strftime('%d/%m/%Y')

print(dataFormatada)

DIAS = [
'Segunda-feira',
'Terça-feira',
'Quarta-feira',
'Quinta-Feira',
'Sexta-feira',
'Sábado',
'Domingo'
]

data = datetime.today()

indice_da_semana = data.weekday()

semna = DIAS[indice_da_semana]

print(semna)

if semna == 'Segunda-feira':
a = ("📲 📲 Booom dia 🍀", emogtemp, "📲 📲 🔸 Segunda - feira 😁 ",dataFormatada, "🤩🤟🏼😎 ☕ Boas Vendas, Semana produtiva para todos nós 💰😎🤟️📲📲 -----Clima tempo hoje média",cleaned_temp_data,"C°")

elif semna == 'Terça-feira':
a = "📲 📲 Booom dia 🍀", emogtemp, "📲 📲 🔸 Uma Terça - feira 😁 🔻",dataFormatada,"⚽🎲🏌🏻 Boas Vendas 🤑💰😎 🙏🌤️🌤️🌤️📲📲 -----Clima tempo hoje média",cleaned_temp_data,"C°"
elif semna == 'Quarta-feira':
a = ("📲 📲 Booom dia 🍀", emogtemp, "📲 📲 🔸Uma Quarta-feira abençoada para nós 🔻",dataFormatada,
"\n⚽🎲🏌🏻 Boas Vendas 🤑💰😎 🙏🌤️🌤️🌤️📲📲 ---"
"--Clima tempo hoje média",cleaned_temp_data,"C°")
elif semna == 'Quinta-Feira':
a = ("📲 📲 Booom dia 🍀", emogtemp, "📲 📲 🔸 Quintouu 🔸",dataFormatada,
"\n🙌🏼🤩 🔸☕ Boas Vendas 💰😎🤟️📲📲 ---"
"--Clima tempo hoje média",cleaned_temp_data,"C°")

elif semna == 'Sexta-feira':
a = ("📲 📲 Booom dia 🍀", emogtemp, "📲 📲 🔸 Sextouu🦅☄️⚡ SEXTA-FEIRA ABENÇOADA 🔻",dataFormatada,
"\n🙌🏼🤩 🔸☕ Boas Vendas 🙌🏼 ✅ ---"
"--Clima tempo hoje média",cleaned_temp_data,"C°")

#Contatos/Grupos - Informar o nome(s) de Grupos ou Contatos que serao enviadas as mensagens
contatos = ['Michel Ribeiro Da Silva']

#Funcao que pesquisa o Contato/Grupo
def buscar_contato(contato):
campo_pesquisa = browser.find_element_by_xpath('//div[contains(@Class,"copyable-text selectable-text")]')
time.sleep(2)
campo_pesquisa.click()
campo_pesquisa.send_keys(contato)
campo_pesquisa.send_keys(Keys.ENTER)

#buscando mesagem a ser enviada
campo_mensagem = browser.find_elements_by_xpath('//div[contains(@Class,"copyable-text selectable-text")]')
mensagem = browser.execute_script(JS_ADD_TEXT_TO_INPUT,a)

#Funcao que envia a mensagem
def enviar_mensagem(mensagem):
campo_mensagem = browser.find_elements_by_xpath('//div[contains(@Class,"copyable-text selectable-text")]')
campo_mensagem[1].click()
time.sleep(3)
campo_mensagem[1].click()
campo_mensagem[1].send_keys(str(mensagem))
campo_mensagem[1].send_keys(Keys.ENTER)

#Percorre todos os contatos/Grupos e envia as mensagens
for contato in contatos:
buscar_contato(contato)
enviar_mensagem(mensagem)
time.sleep(1)

Está com falha não consigo enviar a mensagem final da variavel (A) segue detalhes:

ERRO retornado.

Quinta-Feira

Traceback (most recent call last):
File "C:\Python Scripts\Projetos video e organizado\PROGRMAS ALEATORIS\PythonFundamentos\test222.py", line 108, in
mensagem = browser.execute_script(JS_ADD_TEXT_TO_INPUT,a)
File "C:\Python Scripts\Projetos video e organizado\PROGRMAS ALEATORIS\PythonFundamentos\venv\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 634, in execute_script
return self.execute(command, {
File "C:\Python Scripts\Projetos video e organizado\PROGRMAS ALEATORIS\PythonFundamentos\venv\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "C:\Python Scripts\Projetos video e organizado\PROGRMAS ALEATORIS\PythonFundamentos\venv\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.JavascriptException: Message: javascript error: elm.dispatchEvent is not a function
(Session info: chrome=92.0.4515.131)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions