Mar*_*abu 5 python email python-3.x telegram telegram-bot
嗨,我有一个 Python 程序,它每隔一小时生成一次结果。结果可以是任何东西。这个程序将在本地机器或虚拟专用网络中运行。
我有两个要求 1. 将这个 python 生成的结果自动发送到一个电报组 [组名“我们的世界”](由我创建),无需用户干预。(我在同一系统中运行桌面电报客户端或 web.telegram.org)
有哪些方法可以实现这一要求。是否有任何可用的工作代码来完成这项工作。请分享信息和细节。
编辑:
我面临的问题:
1.使用BotFather创建了一个Bot。2.将此 Bot 添加到我的组,在这里我收到错误无法添加成员,因此将 Bot 添加为组中的管理员 3.记下 BOT 的令牌。4.试图在这个论坛(https://web.telegram.org/#/im?p=g154513121)中获取ChatId有人说p=g之后的数字是chartid,在我的例子中没有数字显示@testingname像这样。
- 使用这种方法尝试获取聊天 ID https://api.telegram.org/bot738909732:AAE-2l7xAAlYHBXprK_a_bex09g9DMZbbDI/getme 所以这里 738909732 成为聊天 ID(在这种情况下为什么我们需要单独调用图表 ID)真正的回应来了!这里的聊天 ID 是我的“testingname”的 ID,没有为该组生成的图表 ID。6.现在打包 URL 以查看响应我收到此错误。
如果我在浏览器中运行这个输出
{"ok":false,"error_code":400,"description":"错误请求:找不到聊天"} {"ok":false,"error_code":403,"description":"禁止:bot 不能向机器人发送消息"}
如何解决此问题并使 BOT 正常工作。为什么我无法将 BOT 添加到我的组中,显示错误“无法添加用户”
如何使这个电报组工作。
注意:使用 BotFather BOT 创建
在向电报组发送消息的情况下,bipin_s 提供的上述方法适用于使用 chat_id = -xxxxxx 的情况。这是要使用的正确 id 后跟 - 符号。
为了在“电报频道”中发布消息,需要在 URL 中做一个小改动。URL 必须如下所示。
url = " https://api.telegram.org/botTokenID/sendMessage?chat_id=@yourChannelChatID&text=message "
将 TokenID 替换为您的 BOT 令牌 ID 将 yourChannelChatID 替换为您的频道图表 ID。请注意,频道 ID 不是负 ID。
代码看起来像这样
import request
url = "https://api.telegram.org/botXyz:wwwwDFSJSJSAX/sendMessage?chat_id=@telechanneltesting&text=message"
requests.post(url)
Run Code Online (Sandbox Code Playgroud)
此处的 URL 中的“消息”将发布在电报频道中。
如何获取频道ID?在浏览器中转到https://web.telegram.org/#/im,登录后现在搜索您的“频道”。现在在浏览器地址栏中,您将有一个链接,如https://web.telegram.org/#/ im?p=@lllioppppppssssr
p=@lllioppppppssssr 后面的等号是频道聊天ID。
小智 5
要在没有任何用户干预的情况下向电报“组”发送消息,您需要一个电报机器人。使用电报机器人父亲创建一个。看看这个链接。在创建机器人时还要注意令牌。此方法仅适用于电报组。电报频道采用另一种方法,MarxBabu 在下面的回答帖子中回答了该方法。
import requests
# telegram url
url = "https://api.telegram.org/bot<Token>"
def send_mess(text):
params = {'chat_id':-xxxxxxx, 'text': text}
response = requests.post(url + 'sendMessage', data=params)
return response
send_mess(result_you_want_to_send)
Run Code Online (Sandbox Code Playgroud)
按照此处提到的步骤获取 chat_id 。注意:群聊 ID 总是以 '-' 开头。例如群 chat_id -356163873。令牌和 chat_id 只是您向电报组发送消息所需的。
要发送群组电子邮件,您必须进行更多搜索,因为我了解不多
小智 0
我让它在树莓派上运行。您必须寻找 botfather 才能获取您的电报令牌。
import telepot
from telepot.loop import MessageLoop
telegram_token = 'xxxx:xxxxxx'
user = 4444444
bot = telepot.Bot(telegram_token)
bot.sendMessage(user, 'Hey!')
Run Code Online (Sandbox Code Playgroud)
对于配置 gmail,我现在没有任何东西......
| 归档时间: |
|
| 查看次数: |
8234 次 |
| 最近记录: |