我想写一个电报机器人来保存照片。这是我的代码,但它不起作用。我不知道我的问题是什么?
def image_handler(bot, update):
file = bot.getFile(update.message.photo.file_id)
print ("file_id: " + str(update.message.photo.file_id))
file.download('image.jpg')
updater.dispatcher.add_handler(MessageHandler(Filters.photo, image_handler))
updater.start_polling()
updater.idle()
Run Code Online (Sandbox Code Playgroud)
请帮我解决我的问题。
最近我尝试使用 Telethon 在电报中添加联系人,根据本教程:1)在 api 电报 python Telethon 中添加新联系人 ,我使用了以下代码:
contact = InputPhoneContact(client_id=0, phone='+989122725691', first_name="user",
last_name="test")
result = ImportContactsRequest(contacts=[contact])
print(result)
Run Code Online (Sandbox Code Playgroud)
但是我在我的输出中得到了这个:
ImportContactsRequest(contacts=[InputPhoneContact(client_id=0, phone='+989122725691', first_name='user', last_name='test')])
Run Code Online (Sandbox Code Playgroud)
我可以找出我的问题所在,但是当我转到我的电报应用程序时,不会添加此联系人。
python-3.x telegram python-telegram-bot telegram-bot telethon
最近,我尝试制作一个新的Key logger,并使用这段代码将其作为后台进程运行:
DETACHED_PROCESS = 0x00000008
pid = subprocess.Popen([sys.executable, "KeyLogger.py"],
creationflags=DETACHED_PROCESS).pid
Run Code Online (Sandbox Code Playgroud)
当我将其作为python文件运行时,我的代码正常工作,但当我使用以下命令将其转换为.exe文件时:
pyinstaller --onefile myfile.py
Run Code Online (Sandbox Code Playgroud)
它不再起作用了.但是当我删除这段代码时:
DETACHED_PROCESS = 0x00000008
pid = subprocess.Popen([sys.executable, "KeyLogger.py"],
creationflags=DETACHED_PROCESS).pid
Run Code Online (Sandbox Code Playgroud)
它工作正常.现在,我正在寻找一种新方法来运行我的python代码作为后台进程(如.exe),而不显示任何控制台窗口. 另外,我很抱歉在我的问题中写错了.
python-3.x ×3
telegram-bot ×2
keylogger ×1
photo ×1
pyinstaller ×1
python ×1
subprocess ×1
telegram ×1
telethon ×1