Как боту вставлять изображение через url в telegra.ph?
Мне необходимо, чтобы бот брал url адрес картинки, например из дискорда, и вставлял его в статью telegra.ph и оно преобразило url в картинку. Если это делать вручную, то нужно вставить ссылку и нажать Enter, только тогда изображение станет изображением, а не ссылкой. Но если просто вставить ссылку, то она останется текстом. Так и бот вставляет url, но ссылка не становится изображением. API или модулей, подходящих, лично я не нашёл, может слепой. Помогите найти решение. Пример рабочего кода, но с проблемой:
from telegraph_api import Telegraph import asyncio import random random_1 = random.randint(99999, 99999999999) random_2 = random.randint(99999, 99999999999) async def main(): telegraph = Telegraph() # Новый аккаунт await telegraph.create_account(random_2, author_name=random_1) # Статья new_page = await telegraph.create_page( random_1, "https://media.discordapp.net/attachments/1013153256215691344/1013153595480342658/FZ9Pp5LaUAAkNHa_.jpg" ) # Результат print(new_page.url) asyncio.run(main())
Отслеживать
задан 28 авг 2022 в 9:59
1,124 2 2 золотых знака 4 4 серебряных знака 16 16 бронзовых знаков
2 ответа 2
Сортировка: Сброс на вариант по умолчанию
Чтобы прикрепить картинку ее сначала нужно скачать по URL, а затем загрузить фаил картинки с помощью API. Это можно сделать следующим образом:
def telegraph_file_upload(path_to_file): ''' Sends a file to telegra.ph storage and returns its url Works ONLY with 'gif', 'jpeg', 'jpg', 'png', 'mp4' Parameters --------------- path_to_file -> str, path to a local file Return --------------- telegraph_url -> str, url of the file uploaded >>>telegraph_file_upload('test_image.jpg') https://telegra.ph/file/16016bafcf4eca0ce3e2b.jpg >>>telegraph_file_upload('untitled.txt') error, txt-file can not be processed ''' file_types = file_ext = path_to_file.split('.')[-1] if file_ext in file_types: file_type = file_types[file_ext] else: return f'error, -file can not be proccessed' with open(path_to_file, 'rb') as f: url = 'https://telegra.ph/upload' response = requests.post(url, files=, timeout=1) telegraph_url = json.loads(response.content) telegraph_url = telegraph_url[0]['src'] telegraph_url = f'https://telegra.ph' return telegraph_url
Функция вернет ссылку на картинку, которая была загружена в telegraph. Ее надо будет использовать при создании записи
Можно не загружать фаил в telegraph, а просто указать ссылку на картинку в инетренете, telegraph сам скачает картинку и прикрепит ее к сообщению.
Как вставить в Telegraph картинку ссылкой по api?
Формирую telegraph страницу из базы на сервере. Доступ к файлам(картинкам) открытый. Они доступны публично по ссылке.
Задача: вставить любым способом картинку в Telegraph контент, формируя статью. Желательно, чтобы ссылки на картинку видно не было.
Использую aiograph, но можно и голым api обойтись, думаю.
UPD. Удалось добавить простым тегом / Но опять же с веб браузера в коде страницы есть ли возможность скрыть адрес сервера с которого всё качается или же как ограничить доступ к серверу только с Telegraph?
- Вопрос задан более двух лет назад
- 1581 просмотр
Комментировать
Решения вопроса 0
Ответы на вопрос 1
Павел Дунаев @Pasha13666
вставить любым способом картинку в Telegraph контент
Можно, через тег img.
есть ли возможность скрыть адрес сервера
Нет, но можно загружать картинки на сервера телеграф.
ограничить доступ к серверу только с Telegraph
В теории можно, но лучше не надо. Проблема в том, что у телеграфа как бы несколько клиентов — веб версия и приложения на андроид и ios. Каждый из них можно определить (например в браузере есть referrer), но не факт, что это будет работать правильно и не сломается с каким-нибудь обновлением телеграмма.
Но если очень хочется, настройте логи на сервере так, чтобы в них писалось как можно больше (как минимум все заголовки) и откройте вашу страницу в телеграфе разными способами (браузер, приложения), а затем откройте картинку отдельно от страницы. Сравните заголовки и определите, по каким можно фильтровать. Затем настройте фильтр в вашем веб-сервере.
Если вы хотите организовать защиту от скачивания, то удачи вам. Твиттер (если я ничего не путаю) режет картинки на вертикальные полосы.
Пишем статью в telegra.ph. Как правильно оформить и опубликовать?
Давайте же разберемся что умеет этот сервис. Функционал у него хороший. Здесь можно добавлять тексту легкости используя выделение: жирным и курсив, но отсутствует подчеркнутый. Его можно использовать только добавив ссылку на текст. Также можно выделять главные части текста заголовком 2 типов и двумя видами цитатами. Кроме фотографий в статью telegra.ph можно добавить видео.
А главное, нет никаких лишних ссылок, которые могут увести читателя куда-то не туда.
Для того, чтобы ваша статья была по настоящему интересной и привлекательной вам необходимо использовать все возможные инструменты, которые предлагает нам telegra.ph
Что такое telegra.ph
Telegraph — это анонимная блог-платформа, бесплатный издательский инструмент, созданный компанией Telegram. Хотя Telegraph создавался прежде всего как инструмент, позволяющий делиться длинными текстами в мессенджере Telegram, это полностью отдельный сервис, который можно использовать и без аккаунта в Telegram.
Платформа обеспечивает анонимность авторов. Существует возможность опубликовать статью без регистрации. В этом случае автор может редактировать или удалять свою статью, пока не очистит Cookie в браузере. Для того, чтобы иметь возможность редактировать статьи и после смены браузера, существует возможность регистрации. Регистрация также является анонимной, и не требует ни электронной почты, ни пароля. Вместо этого пользователю выдаётся уникальный токен, который в дальнейшем можно использовать для авторизации. И регистрация, и авторизация доступны только через API или сторонние сервисы; на самом сайте такой возможности нет. При регистрации также нужно выбрать имя аккаунта, однако оно не видно читателям и не обязано быть уникальным. Имя аккаунта введено для облегчения работы пользователей с несколькими аккаунтами на telegra.ph. (ru.wikipedia.org)
1. Начало работы
Чтобы написать статью вам достаточно перейти на сайт: www.telegra.ph.
Начало работы в Telegra.ph без регистрации.
Заполнить следующие поля:
Title – заголовок поста. Формируется с датой публикации и ссылкой. Благодаря ей пользователь сможет работать с текстом и на других ресурсах.
Your name – Имя автора. Можно вписать ссылку на канал или никнейм в Телеграм или оставить ее незаполненной, сохранив анонимность.
Your store – поле, предназначенное для написание самой статьи
! Для редактирования текста в анонимном режиме нужно сохранить файл cookie.
Как создавать медийные посты в Telegra.ph
Создания ценности через контент — это ваш ключевой навык для раскрутки канала в Telegram. Цель ценности контента — способность решать какую-либо проблему. Важно опубликовать контент так, чтобы он генерировал трафик. Для этого существует несколько сервисов. В этой статье я расскажу о Telegra.ph.
Telegraph
Telegra.ph дает возможность публиковать тексты, фотографии, видео. Если разместить ссылку на пост в Telegraph в чат или собственный канал, то подписчики смогут посмотреть статью с функцией быстрого просмотра Instant View . То есть, при нажатии на ссылку, происходит мгновенный переход на статью. В частности, в Telegraph вы можете создать :
1-2) курсив, жирный 3) ссылка 4-5) два типа заголовков (первого и второго уровней) 6) цитирование 7) вставка фотографии (с возможностью добавить подпись)
8) вставка видео с YouTube и Vimeo
Про цитирование нужно заметить, что оно бывает двух видов 
Якоря
С помощью якорей можно сделать оглавление, можно отправить читателя сразу к интересующему его месту вашего текста. Якорь — это заголовок, который не должен повторяться далее, не может быть одинаковым с другим заголовком. Ссылка на якорь начинается с тега # и без пробелов. Если в заголовке несколько слов, они пишутся через тире (пример #Глава-номер-пять) ссылка #_tl_editor она просто перебрасывает в начало всего документа.
Работа с картинками
Картинки можно вставить с помощью маленького фотоаппаратика, что появляется слева в каждой новой строке абзаца, либо просто перетянуть сюда и сохранить.
Можно перетащить картинку из интернета, например с яндекса. Иногда бывает, при попытки сохранить публикацию сразу после вставки картинки, выскакивает надпись «Upload in progress. Please wait. » Тут нужно просто подождать, пока картинка прогрузится в телеграф. Картинку можно подписывать:
Вы видите надпись под картинкой Caption (optional)? Здесь можно подписывать картинку.
Видео

В телеграф можно загружать как видео так и гиф. Размер не должен превышать 5 Мб. Делается также через маленький фотоаппаратик (жмем <>), появится
Страничность
- Для начала сохраняем первую статью. Потом создаем вторую. Тоже сохраняем.
- Копируем ссылку 2-й статьи и идем в первую и редактируем.
- Внизу документа, пишем сообщение формата «Следующая глава», или «Читать дальше».
- Сохраняем, копируем ссылку первого документа, идем во второй и повторяем пункт два.
Пример: ЧИТАТЬ ДАЛЬШЕ —>
Так можно вернуться в начало статьи. Помните же про тег#_tl_editor , пример его применения: Наверх (вставляем код)
Вот так выглядит пост в Telegraph на моем канале Деньги в Telegram

Желаю вам создавать медийные посты!
Но в Telegraph есть одно “но”. Telegraph не индексируется поисковыми системами. Проще говоря, ваши посты в Telegraph не будут видны поисковым системам, которые будут дополнительно выдавать их в выдаче поиска. Поэтому в следующей статье я расскажу, какие сервисы индексируются в поиске, в том числе сервис https://spark.ru/
Добавляйтесь и приглашайте своих друзей на наш канал в Telegram @dengi_tg, ссылка на канал: https://goo.gl/8BmUS7
Если вас интересует красота и молодость, подпишитесь на канал Леди Молодость: https://goo.gl/i98KZX
Спасибо за внимание и ваше время. Инна Нефедовская
#telegram #телеграм #Telegraph #контентtelegram