Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Telebot Python Форматирование

Николай Грязнов Ученик (183), на голосовании 1 неделю назад
Здарвствуйте, я сохраняю текст пользователя в sqlite3 базу данных, как мне вывести этот текст из базы данных с сохранением ФОРМАТИРОВАНИЯ (жирный, курсив и тд шрифт). Помогите пожалуйста
Голосование за лучший ответ
V̲i̲s̲t̲a̲s̲t̲e̲r̲ Искусственный Интеллект (265272) 1 месяц назад
да никак, он ведь в базу попадает уже без признаков форматирования, которые работают только в том редакторе, в котором работают.
Николай ГрязновУченик (183) 1 месяц назад
ну может можно как то его маркировать, добавить спец символы ?
V̲i̲s̲t̲a̲s̲t̲e̲r̲ Искусственный Интеллект (265272) Николай Грязнов, можно. Но придется работать с атрибутами объекта entities. Эти атрибуты конвертируем во что-то более понятное, например в html или сразу в разметку телеги, и храним в базе. При необходимости отослать обратно, тэги снова переводим в понятную для телеги разметку, например **bold** ... Крч. — муть , лучше не связываться
Рустам Абдрашитов Мыслитель (9542) 1 месяц назад
Telebot Python Форматирование
Здарвствуйте, я сохраняю текст пользователя в sqlite3 базу данных, как мне вывести этот текст из базы данных с сохранением ФОРМАТИРОВАНИЯ (жирный, курсив и тд шрифт). Помогите пожалуйста
 import sqlite3 

# Создание базы данных и таблицы
conn = sqlite3.connect('text_format.db')
cursor = conn.cursor()
cursor.execute('''
CREATE TABLE IF NOT EXISTS formatted_text (
id INTEGER PRIMARY KEY,
text TEXT
)
''')

# Сохранение текста с форматированием
formatted_text = "<b>Жирный текст</b> и <i>курсивный текст</i>"
cursor.execute('INSERT INTO formatted_text (text) VALUES (?)', (formatted_text,))
conn.commit()
conn.close()
2. Вывод текста с форматированием
При извлечении текста из базы данных просто выведите его на экран или в интерфейс вашего приложения, поддерживающий HTML или Markdown.
Пример кода для извлечения и отображения текста
 import sqlite3 

# Подключение к базе данных
conn = sqlite3.connect('text_format.db')
cursor = conn.cursor()

# Извлечение текста
cursor.execute('SELECT text FROM formatted_text WHERE id = 1')
row = cursor.fetchone()

if row:
text = row[0]
print("Извлеченный текст:", text) # Здесь текст будет с HTML-тегами

conn.close()
3. Отображение в пользовательском интерфейсе
Если вы используете библиотеку для создания интерфейса, например Tkinter или Flask, убедитесь, что она поддерживает отображение HTML. Например, в Flask вы можете передать извлечённый текст в шаблон и отобразить его как HTML.
Пример с Flask
 from flask import Flask, render_template_string 
import sqlite3

app = Flask(__name__)

@app.route('/')
def index():
conn = sqlite3.connect('text_format.db')
cursor = conn.cursor()
cursor.execute('SELECT text FROM formatted_text WHERE id = 1')
row = cursor.fetchone()
conn.close()

return render_template_string('<h1>{{ text|safe }}</h1>', text=row[0])

if __name__ == '__main__':
app.run(debug=True)
Похожие вопросы