Проблема с иттерацией цикла

belazan

Новичок
Пользователь
Сен 14, 2022
2
0
1
Всем привет, новенький как на форуме так и в python. Не буду ходить вокруг да около, вот с какой проблемой столкнулся.

Есть скрипт который читает данные из Exscel таблицы (колонка time), где в колонку в каждой ячейке внесено время с шагом n минут, и скрипт пробегаясь по каждому времени делает следующее:
в Телеграме (в отложенных сообщениях) имитирует нажатия клавиш в таком порядке чтобы вставить заранее скопированный текст из буфера обмена, нажать Enter (Отправить позже), после чего вписывает время из колонки в Exscel таблицы и окончательно отправляет сообщение которое получит пользователь в заданное время. То бишь мы отправляем скопированный текст получателю с промежутком в n минут.

И всё бы ничего, скрипт то работает, вот только не всегда корректно. Иногда он начинает вписывать в поле для ввода сообщения не текст из буфера обмена, а время из таблицы, и я не могу понять по какой причине.
Есть предположение, что когда я намерено закрываю консоль при выполнении иттерации цикла, возникает какой-то сбой ибо ловлю такое сообщение в Вижуал студио “Программа ”python.exe“ завершилась с кодом -1 (0xffffffff).”

Следовательно скрипт нельзя назвать рабочим.

Посему призываю людей которые могут помочь с решением проблемны и буквально молю протянуть руку помощи несчастному новичку

Ниже оставляю код и таблицу


Python:
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.')
 

Вложения

  • Time.zip
    9,6 КБ · Просмотры: 0

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 650
472
83
Есть предположение, что когда я намерено закрываю консоль при выполнении иттерации цикла, возникает какой-то сбой ибо ловлю такое сообщение в Вижуал студио “Программа ”python.exe“ завершилась с кодом -1 (0xffffffff).”
таким образом вы завершаете программу принудительно...

ногда он начинает вписывать в поле для ввода сообщения не текст из буфера обмена, а время из таблицы, и я не могу понять по какой причине.
попробуйте таймауты увеличить...

вообще странный подход к спаму в телеграмме, если честно...
 

belazan

Новичок
Пользователь
Сен 14, 2022
2
0
1
таким образом вы завершаете программу принудительно...


попробуйте таймауты увеличить...

вообще странный подход к спаму в телеграмме, если честно...
Пробовал менять слипы, результат остался тот де. Да странный но не нашел другого варианта, если работать с API и библиотекой Telebot - не возможная задача т.к. нужно что бы сам бот был администратором в тех каналах куда будет спамить
 

Форум IT Специалистов