|   |   | 
| 
 | Как разобрать текст письма HTML? | ☑ | ||
|---|---|---|---|---|
| 0
    
        Добрый хачик 12.03.14✎ 10:15 | 
        средствами 1с подключаюсь к почтовому ящику и забираю письма (штатный механизм УПП 1.3)
 При получении текста письма идет обращение к "ИнтернетТекстыПочтовогоСообщения", там может быть несколько текстов в виде просто текста и в виде HTML. Так вот, если есть текст "ПростоТекст" то все норм. Но некоторые пользователи отправляют письма с мобильных устройств, и вот в них письмах текст есть только в формате HTML. Как из этого кода вытащить сам текст письма??? <html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"> <head> <meta http-equiv="Content-Type" content="text/html; charset=koi8-r"> <meta name="Generator" content="Microsoft Word 14 (filtered medium)"> <style><!-- /* Font Definitions */ @font-face {font-family:Calibri; panose-1:2 15 5 2 2 2 4 3 2 4;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {margin:0cm; margin-bottom:.0001pt; font-size:12.0pt; font-family:"Times New Roman","serif";} a:link, span.MsoHyperlink {mso-style-priority:99; color:blue; text-decoration:underline;} a:visited, span.MsoHyperlinkFollowed {mso-style-priority:99; color:purple; text-decoration:underline;} p {mso-style-priority:99; mso-margin-top-alt:auto; margin-right:0cm; mso-margin-bottom-alt:auto; margin-left:0cm; font-size:12.0pt; font-family:"Times New Roman","serif";} span.EmailStyle18 {mso-style-type:personal-compose; font-family:"Calibri","sans-serif";} ..MsoChpDefault {mso-style-type:export-only; font-size:10.0pt;} @page WordSection1 {size:612.0pt 792.0pt; margin:2.0cm 42.5pt 2.0cm 3.0cm;} div.WordSection1 {page:WordSection1;} --></style><!--[if gte mso 9]><xml> <o:shapedefaults v:ext="edit" spidmax="1026" /> </xml><![endif]--><!--[if gte mso 9]><xml> <o:shapelayout v:ext="edit"> <o:idmap v:ext="edit" data="1" /> </o:shapelayout></xml><![endif]--> </head> <body lang="EN-US" link="blue" vlink="purple"> <div class="WordSection1"> <p><span lang="RU" style="font-family:"Calibri","sans-serif"">Из   000 Доларов<o:p></o:p></span></p> <p><span style="font-family:"Calibri","sans-serif"">##- Please type your reply above this line -##</span> <o:p></o:p></p> </div> </body> </html> | |||
| 1
    
        Ksandr 12.03.14✎ 10:18 | 
        ЧтениеXML например заюзать.     | |||
| 2
    
        Wobland 12.03.14✎ 10:20 | 
        (1) издалека и правда похоже на XML     | |||
| 3
    
        Wobland 12.03.14✎ 10:21 | 
        HTML=Новый COMОбъект("HTMLFile") ?     | |||
| 4
    
        rozer76 12.03.14✎ 10:21 | 
        какой же это xml?... это ж html и читать с <body> до </body>     | |||
| 5
    
        Wobland 12.03.14✎ 10:23 | 
        а что такое ЧтениеHTML?     | |||
| 6
    
        rozer76 12.03.14✎ 10:26 | 
        (5)
 ЧтениеHTML (HTMLReader) Методы: Закрыть (Close) ОткрытьФайл (OpenFile) УстановитьСтроку (SetString) Конструкторы: По умолчанию Описание: Предназначен для последовательного чтения HTML данных из файла или строки. Автоматически обрабатывает объявление HTML-документа и распознает тип кодировки файла. Объект должен использоваться в паре с ПостроительDOM. Доступность: Тонкий клиент, сервер, толстый клиент, внешнее соединение. Пример: ЧтениеHTML = Новый ЧтениеHTML; ЧтениеHTML.УстановитьСтроку("<html><head><title>Тест</title></head><body><a href='http://www.1c.ru'>Компания 1С</a></html>"); ПостроительDOM = Новый ПостроительDOM; ДокументHTML = ПостроительDOM.Прочитать(ЧтениеHTML); | |||
| 7
    
        rozer76 12.03.14✎ 10:27 | 
        (6) -> (0) :)     | |||
| 8
    
        Добрый хачик 12.03.14✎ 10:32 | 
        Благодарствую!     | |||
| 9
    
        Добрый хачик 12.03.14✎ 10:33 | 
        если кому надо будет, вот простой код:
 Текст = ПолучитьМакет("Макет"); Чтение = Новый ЧтениеHTML; Чтение.УстановитьСтроку(Текст.ПолучитьТекст()); ПостроительDOM = Новый ПостроительDOM; ДокументHTML = ПостроительDOM.Прочитать(Чтение); ТекстПисьма = ДокументHTML.Тело.ТекстовоеСодержимое; | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |