当前位置: 首页 > 知识库问答 >
问题:

蟒蛇电报api。我不明白如何通过Python lib发送图像到电报

宇文航
2023-03-14

我正试图从我的硬盘上传一张照片到电报上。在留档中说使用upload_file():

电报上载上传文件(f)上传文件到Telegra。ph的服务器。返回链接列表。只允许。jpg。jpeg。巴布亚新几内亚。gif和。mp4文件。参数:f(文件、str或列表)–文件名或类似文件的对象。

但我不明白“f(文件、str或列表)–文件名或类似文件的对象”是什么意思。也就是说,我需要如何处理照片才能将其传递给此函数

我试图解决这个问题:

upload_file(open('1.png', 'rb'))

错误:电报。例外情况。电报异常:文件类型无效

myf = io.StringIO()
        myf.write(open(f'photo/{i}.png', 'rb'))
        print(upload_file(myf))
        myf.close()

错误:类型错误:字符串参数预期,得到'_io。自备读者

共有1个答案

东门子昂
2023-03-14

我正在使用此方法加载图像

  
def upload_image_telegraph(path_image):
    with open(path_image, 'rb') as f:
        result_requests = requests.post(
            'http://telegra.ph/upload',
            files={'file': ('file', f, 'image/jpg')}  # image/gif, image/jpeg,image/jpg, image/png, video/mp4
        ).json()
        return result_requests

您还可以使用Python html_telegraph_poster库下载,在它的帮助下,您可以传输本地图像和指向它们的链接示例

  
from html_telegraph_poster import upload_image
res = upload_image('local path image or link image') 
 类似资料:
  • 嗨,我正在尝试建立一个网站登录系统,用户可以使用电报登录。我希望实现此工作流: < li >用户选择通过电报登录/注册。 < li >用户输入他们的用户名(@ExampleJoe)。 < li >通过我的电报机器人(@ExampleBot)向他们发送6位验证码。 < li >用户将收到的6位数字代码输入到我的网站,并被允许进入。 我在步骤 2-3 中遇到了问题,我的机器人可以仅使用其用户名向他们发

  • 问题内容: 我正在尝试使用 Go通过gmail API 发送电子邮件,但我发现文档存在缺陷/令人困惑。有一次我没有看到收据字段或电子邮件正文。 我不需要上传任何内容,因此我发现简单上传,分段上传,可恢复的上传方法完全没有用。是否有任何清晰的演示(带有所需的数据/参数,例如cURL有效负载)? 顺便提一句,我不确定是否我是唯一一个想到这一点的人,但是除非有可用的库,否则Google api似乎在可用

  • 我正在使用pytest框架和pytest cov插件生成覆盖率报告,该报告在测试用例执行后在htmlcov目录中生成一个覆盖率报告文件,在测试用例执行时,有没有一种方法可以将该报告文件作为附件发送?

  • 创建电报机器人并获得机器人令牌后,我想向机器人应用编程接口发送请求。 这个链接说我们必须像这样发送HTTP请求:

  • 请让我知道通过邮件自动发送TestNG可电子邮件报告而不添加外部jar的最佳方式。

  • 在我们的小型初创公司中,我们使用GitLab进行开发,使用Telegram进行开发人员和PO之间的内部沟通。由于PO希望立即看到进度,因此我们设置了GitLab Pipeline,以便在每次提交后将预览版部署在Web服务器上。现在我们想扩展管道。这样在部署后通过Telegram组发送通知。 所以问题是,这可能吗?如果可能,怎么可能? 编辑:因为我已经实现了,这不是一个真正的问题。我想把答案贴在这里