Форум сайта python.su
Всем привет, новенький как на форуме так и в python. Не буду ходить вокруг да около, вот с какой проблемой столкнулся.
Есть скрипт который читает данные из Exscel таблицы (колонка time), где в колонку в каждой ячейке внесено время с шагом n минут, и скрипт пробегаясь по каждому времени делает следующее:
в Телеграме (в отложенных сообщениях) имитирует нажатия клавиш в таком порядке чтобы вставить заранее скопированный текст из буфера обмена, нажать Enter (Отправить позже), после чего вписывает время из колонки в Exscel таблицы и окончательно отправляет сообщение которое получит пользователь в заданное время. То бишь мы отправляем скопированный текст получателю с промежутком в n минут.
И всё бы ничего, скрипт то работает, вот только не всегда корректно. Иногда он начинает вписывать в поле для ввода сообщения не текст из буфера обмена, а время из таблицы, и я не могу понять по какой причине.
Есть предположение, что когда я намерено закрываю консоль при выполнении иттерации цикла, возникает какой-то сбой ибо ловлю такое сообщение в Вижуал студио “Программа ”python.exe“ завершилась с кодом -1 (0xffffffff).”
Следовательно скрипт нельзя назвать рабочим.
Посему призываю людей которые могут помочь с решением проблемны и буквально молю протянуть руку помощи несчастному новичку
Ниже оставляю код и таблицу
import pyautogui import pandas import time import sys excel_data = pandas.read_excel('Time.xlsx', sheet_name='Recipients') time.sleep(5) for row in excel_data['time'].tolist(): pyautogui.hotkey('ctrl', 'v', interval=0.50) pyautogui.press('enter') time.sleep(0.4) pyautogui.press('backspace') pyautogui.press('backspace') pyautogui.press('backspace') pyautogui.press('backspace') pyautogui.write(str(row)); pyautogui.press('enter') time.sleep(0.50) print('The script executed successfully.')
Отредактировано belazan (Сен. 14, 2022 20:04:20)
Прикреплённый файлы:
Time.xlsx (13,0 KБ)
Офлайн
belazanреализуйте через телеграмм бота и библиотеки типа telebot
То бишь мы отправляем скопированный текст получателю с промежутком в n минут.
Офлайн
xam1816Думал так сделать, но это невозможно. Если писать в каналы либо группы в которых бот не администратор - этот вариант отпадает напрочь. Что можно так это написать юзеру, и то, для этого юзер должен своими руками запустить бота у себя в приложении.
Офлайн
хз попробуйте вместо xlsx csv и замутите проверку того что вставляете ps хм использовать вебверсию телеги? ну если конечно безразлично кто между тобой и телегой конечно
гугли чтото вроде python telegrm client и не мучте буфер и себя
Отредактировано AD0DE412 (Сен. 14, 2022 23:21:45)
Офлайн
AD0DE412Изменение на csv не помогло + ко всему даже если исключить библиотеку pandas из скрипта и просто создать лист со временем, а не брать его из таблицы - результат тот же
хз попробуйте вместо xlsx csv и замутите проверку того что вставляете ps хм использовать вебверсию телеги? ну если конечно безразлично кто между тобой и телегой конечногугли чтото вроде python telegrm client и не мучте буфер и себя
Отредактировано belazan (Сен. 16, 2022 00:21:36)
Офлайн
Проблема решена, Pyautogui не читал кириллицу, заменил библиотеку на keyboard - всё работает))
Офлайн