Как мне манипулировать данными из файла CSV, который я уже создал - PullRequest
0 голосов
/ 30 октября 2019

Итак, я пытаюсь работать с 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)
...