小编Iva*_*dov的帖子

如何获取先前发送的消息的内联键盘?

考虑以下顺序:

  1. Telegram 机器人使用Message联键盘InlineKeyboardMarkup特定的User
  2. 当用户点击 的按钮之一时,机器人会收到带有CallbackQueryInlineKeyboardMarkup的响应
  3. CallbackQuery包含一个message对象,它代表在步骤 1 中发送的原始消息,但据我在 API 文档中看到,Message不包含有关InlineKeyboardMarkup或 的任何信息reply_markup

InlineKeyboardMarkup那么原来发送的内容是否可以得到呢Message
如果没有办法得到它,在这种情况下有什么解决方法吗?

bots telegram telegram-bot

5
推荐指数
1
解决办法
1530
查看次数

我应该如何将文本/纯数据传递给 python 的 requests.post?

我试图curl在 python 请求中转换这个命令,但我不确定我应该如何传递数据:

curl -X POST -u "apikey:{apikey}" \
    --header "Content-Type: text/plain" \
    --data "some plain text data" \
    "{url}"
Run Code Online (Sandbox Code Playgroud)

我试图直接传递字符串并对其进行编码,str.encode('utf-8')但出现错误 415Unsupported Media Type

这是我的代码:

text = "some random text"
resp = requests.post(url, data=text, headers={'Content-Type': 'text/plain'}, auth=('apikey', self.apikey))
Run Code Online (Sandbox Code Playgroud)

[编辑]:解决方案是不在请求中指定标头

非常感谢!

python http python-3.x python-requests

5
推荐指数
1
解决办法
1万
查看次数

如何从 psycopg2 导入“连接”类?

我想专门connection从 psycopg2 导入该类,因为我想指定我的函数之一的参数确实是有效的 psycopg2 连接。

但我无法准确定位它的存储位置。文档页面在这里,但我似乎找不到任何对其定义位置的引用,并且在源代码中浏览让我更加困惑。

到目前为止我已经尝试过:

from psycopg2 import connection
from psycopg2.extensions import connection
from psycopg2.extras import connection
from psycopg2.sql import connection
Run Code Online (Sandbox Code Playgroud)

但它们都不是有效的参考

python psycopg2

4
推荐指数
1
解决办法
2534
查看次数

从 URL 下载文件并将其保存在 Python 文件夹中

我有很多的URL与文件类型.docx.pdf我想运行一个python脚本从URL下载它们,并存储在文件夹中。这是我为单个文件所做的工作,我会将它们添加到 for 循环中:

response = requests.get('http://wbesite.com/Motivation-Letter.docx')
with open("my_file.docx", 'wb') as f:
    f.write(response.content)
Run Code Online (Sandbox Code Playgroud)

my_file.docx它保存的只有 266 字节并且已损坏,但 URL 很好。

更新:

添加了此代码并且它可以工作,但我想将它保存在一个新文件夹中。

import os
import shutil
import requests

def download_file(url, folder_name):
    local_filename = url.split('/')[-1]
    path = os.path.join("/{}/{}".format(folder_name, local_filename))
    with requests.get(url, stream=True) as r:
        with open(path, 'wb') as f:
            shutil.copyfileobj(r.raw, f)

    return local_filename
Run Code Online (Sandbox Code Playgroud)

python python-requests

4
推荐指数
2
解决办法
2万
查看次数