Итак, я пытаюсь работать с API Telegram и создать программу, которая получает данные из CSV-файла и отправляет персонализированные сообщения людям по Telegram. Программа работает нормально, но я хочу манипулировать данными из файла CSV, чтобы игнорировать конкретных пользователей по имени пользователя или просто удалить строки, в которых они находятся, в файле CSV, чтобы они не получили сообщение.
Я пытался интегрировать панд, но я не знаю, как с ним работать, и я просто испортил свой код.
input_file = sys.argv[1]
users = []
with open(input_file, encoding='UTF-8') as f:
rows = csv.reader(f,delimiter=",",lineterminator="\n")
next(rows, None)
for row in rows:
user = {}
user['username'] = row[0]
user['id'] = int(row[1])
user['access_hash'] = int(row[2])
user['name'] = row[3]
users.append(user)
mode = int(input("Enter 1 to send by user ID or 2 to send by username: "))
OR
for user in users:
if mode == 2:
if user['username'] == "":
continue
receiver = client.get_input_entity(user['username'])
elif mode == 1:
receiver = InputPeerUser(user['id'],user['access_hash'])
else:
print("Invalid Mode. Exiting.")
client.disconnect()
sys.exit()
message = random.choice(messages)
try:
print("Sending Message to:", user['name'])
client.send_message(receiver, message.format(user['name']))
print("Waiting {} seconds".format(SLEEP_TIME))
time.sleep(SLEEP_TIME)