Форум программистов, компьютерный форум, киберфорум
Python
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 27.12.2019
Сообщений: 6

Вывод строки вместо целого текста

12.07.2022, 17:49. Показов 1079. Ответов 8

Студворк — интернет-сервис помощи студентам
Всем привет!
Нужно вывести строку из текста, который был мне отправлен по почте.
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import imaplib
import email
username ="почта"
app_password= "пароль"
gmail_host= 'imap.gmail.com'
mail = imaplib.IMAP4_SSL(gmail_host)
mail.login(username, app_password)
mail.select("INBOX")
_, selected_mails = mail.search(None, '(FROM "от кого почта")')
for num in selected_mails[0].split():
    _, data = mail.fetch(num , '(RFC822)')
    _, bytes_data = data[0]
 
    email_message = email.message_from_bytes(bytes_data)
    print("\n===========================================")
    for part in email_message.walk():
        if part.get_content_type()=="text/plain" or part.get_content_type()=="text/html":
            message = part.get_payload(decode=True)
            print(message.decode()[114]) 
            print("==========================================\n")
            break
В данном случае у меня выводится, лишь 114-ый символ из текста.
А нужно, что бы вышла целая строка или хотя-бы слово( в случае с словом, символы идут через пробел, что уже не подходит)
Заранее спасибо!!!
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
12.07.2022, 17:49
Ответы с готовыми решениями:

Календарь - вывод целого года вместо одного месяца
Здравствуйте, помогите переделать календарь так чтобы вместо одного месяца выводило целый год, который мы зададим. #include...

Вывод цифр, вместо текста
Здравствуйте, у проблема, когда я использую ввод данных cin, и называю имя. У меня вместо имени, цифры что-то вроде этого: -8341235 ...

Вывод текста вместо цифр в DataGridView
Здравствуйте! В одну из колонок DataGridView выводится условные цифры (всего 4 - 0,1,2,3), которые так и хранятся в БД (справочник в...

8
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
12.07.2022, 23:25
Цитата Сообщение от gafurnz Посмотреть сообщение
у меня выводится, лишь 114-ый символ из текста
Цитата Сообщение от gafurnz Посмотреть сообщение
message.decode()[114]
И действительно, почему же?
0
0 / 0 / 0
Регистрация: 27.12.2019
Сообщений: 6
12.07.2022, 23:38  [ТС]
Цитата Сообщение от gafurnz Посмотреть сообщение
у меня выводится, лишь 114-ый символ из текста.
Это лишь пример. того что я смог сделать, соответственно, если будет
Цитата Сообщение от gafurnz Посмотреть сообщение
print(message.decode())
То, будет выводить полный текст.
Поэтому пожалуйста будьте внимательнее, я не спрашивал почему именно 114-ую, ведь я сам её туда и записал.
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
12.07.2022, 23:46
Цитата Сообщение от gafurnz Посмотреть сообщение
То, будет выводить полный текст.
Т.е. ты из готового текста не можешь вытащить строку?
0
0 / 0 / 0
Регистрация: 27.12.2019
Сообщений: 6
12.07.2022, 23:50  [ТС]
Да, верно, не могу.
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
12.07.2022, 23:58
text.split('\n')[0]
например
0
0 / 0 / 0
Регистрация: 27.12.2019
Сообщений: 6
13.07.2022, 00:00  [ТС]
Цитата Сообщение от iSmokeJC Посмотреть сообщение
text.split('\n')[0]
А можно фулл пж, я просто не знаю куда её вставить, что б заработал....
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
13.07.2022, 00:11
Лучший ответ Сообщение было отмечено gafurnz как решение

Решение

print(message.decode().split('\n')[0])

Добавлено через 2 минуты
Разумеется, надо учитывать в каком виде у тебя текст приходит. Если что - сплит по точке например
1
0 / 0 / 0
Регистрация: 27.12.2019
Сообщений: 6
13.07.2022, 02:11  [ТС]
Цитата Сообщение от iSmokeJC Посмотреть сообщение
в каком виде у тебя текст приходит
Он выводит декодированные текста с html, который он взял с сообщений определенной почты (FROM "от какой почты читать сообщения"), твой вариант пробовал - не получилось.

Добавлено через 1 час 33 минуты
Python
1
print(message.decode("utf-8").split('\n')[2])
Действительно помогло, а всего то, нужно было кодировку поставить, а не заставлять думать её самим.
Спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
13.07.2022, 02:11
Помогаю со студенческими работами здесь

Вывод текста в значении поля вместо кода
День добрый. Как в таблице "Успеваемость" настроить вывод информации о группе студента извлекая информацию из таблицы "Студенты"?...

Вывод текста на консоль, закарючки вместо букв
Я создал консольное win32 приложение в vs2010. Попробовал cout'ом вывести текст русскими буквами - вылезли разные закарючки. Ну эту...

вывод в qDebug() юникод символы вместо текста
почему такой код : QFile file("path_to_file.txt"); if(!file.open(QIODevice::ReadOnly)){ QMessageBox::critical(0,...

Исправить ошибку вывод непонятных символов вместо необходимого текста
Здравствуйте. Помогите решить данную проблему. Сама задача - вывести на экран "Привет". Но при попытке компиляции, вместо...

Вывод строки, вместо списка
Здравствуйте, подскажите пожалуйста как сделать вывод строки вместо списка.Сама программа при вводе цифр выводит на английском языке. Нашел...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru