web-dev-qa-db-ja.com

Telegram Bot APIを介してメッセージ内のテキストとともに埋め込み画像を送信する方法

Telegram Bot APIを使用して、

https://core.telegram.org/bots/api#sendphoto で画像を送信できることを知っています。

しかし、リモートイメージをフォーマットされたメッセージにどのように埋め込むことができますか?

私が送信しようとしているメッセージは、太字のタイトル、画像、リンク付きの長いテキストのニュース記事と比較できます。マークダウンで太字のテキストとリンクを作成する方法を理解しましたが、画像の挿入に失敗しました。どうすればそれができますか?

11
Pierre-Antoine

hTMLでParseModeを設定し、次のようにAタグで画像URLを設定する必要があります。

<a href="' + image + '">&#8205;</a>

&#8205;->メッセージに表示しない

26
barzin.A

ゼロ幅のスペーストリックを使用できます。 MarkdownモードとHTML解析モードの両方で機能します。

マークダウン:

$data = [
    'chat_id'    => $chat_id,
    'parse_mode' => 'markdown',
    'text' => "[​​​​​​​​​​​](https://upload.wikimedia.org/wikipedia/commons/thumb/0/02/Stack_Overflow_logo.svg/200px-Stack_Overflow_logo.svg.png) Some text here.",
];

結果:

enter image description here

注:ゼロ幅のスペースは、角かっこ「[[]」の間にあります。

11
Bing Han
import requests    
text="testing"    
img="http://imageurl.png"       
r = requests.get('https://api.telegram.org/botyour_token_here/sendMessage?chat_id=@your_channel_here&parse_mode=markdown&text='+"[​​​​​​​​​​​]("+img+")"+text)
2
Amit Ghosh

Http://.......jpg> ..を使用する方法では、テキストの下に画像のプレビューが表示されます。このような:

a hrefサンプル

captionを使用して画像を送信すると、見栄えがよくなります。

キャプションサンプル

1
AV9