Невозможно извлечь текст из конкретного шаблона электронной почты в Gmail (Spring Boot & Imap)JAVA

Программисты JAVA общаются здесь
Anonymous
Невозможно извлечь текст из конкретного шаблона электронной почты в Gmail (Spring Boot & Imap)

Сообщение Anonymous »

Я работаю над процессом извлечения электронной почты, используя Java, Spring Boot и IMAP для чтения электронных писем от Gmail. Процесс отлично работает для большинства электронных писем, извлекая только текстовый контент. Однако один конкретный шаблон электронной почты вызывает проблему - он извлекает весь HTML и CSS вместо текста. br />
  • Использование IMAP для извлечения электронных писем из Gmail. Mimemessage и извлечение текста с использованием Multipart And Bodypart. проблема: < /strong> < /p>

    Определенный шаблон электронной почты всегда возвращает полный HTML & CSS вместо простого Текст. < /li>
    Другие шаблоны электронной почты извлекают текст, как и ожидалось. Почему процесс извлечения не выполняется для этого.private String extractTextFromMessage(Message message) throws Exception {
    if (message.isMimeType("text/plain")) {
    return message.getContent().toString();
    } else if (message.isMimeType("multipart/*")) {
    Multipart multipart = (Multipart) message.getContent();
    for (int i = 0; i < multipart.getCount(); i++) {
    BodyPart bodyPart = multipart.getBodyPart(i);
    if (bodyPart.isMimeType("text/plain")) {
    return bodyPart.getContent().toString();
    }
    }
    }
    return "No text content found";
    }
    < /code>
    Что я попробовал: < /strong> < /p>

    Убедитесь, что тип контента электронной почты проверяется должным образом. /li>
    итерация через ** Multipart, чтобы найти Text /plain. ** < /li>
    Отладочная необработанное контент электронной почты и обнаружил, что встроенный текст электронной почты Внутри Html или элементы
    .
  • Попроеклся, используя jsoup (jsoup.parse (html) .text ()) для извлечения из HTML, но все еще сталкивается с Проблемы с нежелательным CSS и форматированием.

Вопросы:

Почему эта конкретная электронная почта возвращает полный HTML, в то время как другие возвращают только текст? Текст? быть Полезно и ценится!
Я приложил данные журнала для справки. Br />15:13:49.801 [scheduling-1] INFO c.q.H.util.EmailReaderUtil - Processing message with subject: subject name
15:13:51.321 [scheduling-1] DEBUG c.q.H.templates.TradeIn - Full email content: temp name
------------------------------
Security Note: tempate details
------------------------------
*details*
125,688km, 2350cc, Automatic, Petrol
$12,345
Stock number: 12345
*View listing on Trade Me *
------------------------------
*Member enquiry:*
*Type: * temp
*Name:* name name
*Email: * email@gmail.com
*Phone number: * 123456789
*Location: * adderesss
------------------------------
coments
------------------------------
*Trade-in vehicle details*
*Rego: * 12345
*Vehicle: * vh name
*Sub model: * 12344 S
*Colour: * Grey
*Vehicle type: * Ute
*Doors: * 4
*Seats: * 5
*Fuel type: * Diesel
*Transmission: * Manual
*Engine size: * 12345cc
*Origin: * N

------------------------------
*Vehicle images *
Contact

Contact enquirer

Журнал ошибок:
07:28:32.416 [scheduling-1] INFO c.q.H.c.EmailProcessingController - Scheduler triggered: Processing unread emails.
07:28:35.497 [scheduling-1] INFO c.q.H.util.EmailReaderUtil - Processing message with subject: examp temp
07:28:36.638 [scheduling-1] DEBUG c.q.H.templates.temp - Full email content:




td {
font-family: Verdana,Tahoma,Arial, "Sans Serif";
font-size: 10pt;
}

body {
font-family: Verdana,Tahoma,Arial, "Sans Serif";
font-size: 10pt;
}

table td {
border-collapse: collapse;
}
#footer-ad {
width: 700;
}

.msoFix {
mso-table-lspace:-1pt; mso-table-rspace:-1pt;
}

@media (max-width: 650px) {
table table table {
width: 100% !important;
}
table table table+table {
float: left !important;
}

table table table+table td {
text-align: center;
}

table table table {
width: 100% !important;
}

table table table+table {
float: left !important;
}

table table table+table td {
text-align: center;
}

#trademe-logo {
text-align: center;
}

body>table {
width: 100% !important;
}

body>table:last-of-type {
border: 1px solid white;
height: auto !important;
}

body>table:last-of-type img {
width: 100% !important;
height: auto !important;
}
}

@media screen and (min-width: 601px) {
.container {
width: 600px!important;
}
}




Name:

example name

**more....**




Изображение




Подробнее здесь: https://stackoverflow.com/questions/794 ... ng-boot-im

Вернуться в «JAVA»