使用Python3将CSV文件中的联系人列表导入Telegram

时间:2018-04-21 03:25:54

标签: python telegram telethon

我正在尝试使用Python3从CSV文件导入联系人。

代码运行良好且没有显示任何错误,但联系人未在Telegram中添加。有什么想法吗?

请参阅以下代码:

import csv
from telethon import TelegramClient
from telethon.tl.functions.contacts import GetContactsRequest
from telethon.tl.types import InputPeerUser
from telethon.tl.types import InputPhoneContact
api_id = *******
api_hash = '*********'

client = TelegramClient('myname', api_id, api_hash)
client.connect()
with open('list.csv', 'r') as csv_file:
csv_reader = csv.reader(csv_file)
for line in csv_reader:
 contact = InputPhoneContact(client_id = 0, phone = (line[0]), first_name=(line[1]), last_name=(line[2]))
    contacts = client(GetContactsRequest(0))
    result = client.invoke(ImportContactsRequest([contact]))

1 个答案:

答案 0 :(得分:1)

现在Telegram不正确地支持ImportContacts。它为新创建的帐户仅加载4-5个联系人,以下内容将被忽略。你应该像这样使用telethon的ImportContactsRequest方法:

contacts_book = []
with open('list.csv', 'r') as csv_file:
    csv_reader = csv.reader(csv_file)
    for line in csv_reader:
        contacts_book.append(InputPhoneContact(client_id=0, phone='+' + line[0], first_name=line[1], last_name=line[2]))
result = client(ImportContactsRequest(contacts_book))

即。只有一个ImportContactsRequest用于≈1000个联系人(一个帐户低于5000个)