En utilisant l'API Telegram Bot,
Je suis conscient qu'il est possible d'envoyer une image via https://core.telegram.org/bots/api#sendphoto
Cependant, comment puis-je intégrer une image distante dans un message formaté?
Le message que je cherche à envoyer peut être comparé à un article de presse avec un titre en gras, une image et un texte plus long avec des liens. J'ai compris comment créer du texte en gras et des liens avec démarque, mais je n'arrive pas à insérer des images. Comment pouvons-nous faire cela?
vous devez définir ParseMode en HTML et définir votre URL d'image dans une balise comme celle-ci:
<a href="' + image + '">‍</a>
‍
-> ne jamais afficher dans le message
Vous pouvez utiliser une astuce d'espace de largeur nulle. Fonctionne pour le mode d'analyse Markdown et HTML.
Réduction:
$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.",
];
Résultat:
Remarque: L'espace de largeur nulle se situe entre les crochets "[]".
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)
La méthode utilisant http: //.......jpg> .. affichera un aperçu de l'image sous le texte. Comme ça:
Ce sera mieux si vous envoyez une image avec une légende .