Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

текст HTML Документа из TWebBrowser без тегов


Страницы:   1 2

Демерго ©   (2010-12-01 18:07:00) 

Хочу сохранить в файл текст из Webbrowser без тегов.

нашел следующий код:

uses mshtml, activex;

procedure GetHtmlCode(WebBrowser: TWebBrowser; FileName: string);
var
htmlDoc: IHtmlDocument2;
PersistFile: IPersistFile;
begin
htmlDoc := WebBrowser.document as IHtmlDocument2;
PersistFile := HTMLDoc as IPersistFile;
PersistFile.save(StringToOleStr(FileName), true);
end;

Делает все идеально, кроме одного НО. Он "портит" документ в самом Webbrowsere. Можно как-то это обойти? Чтобы сохранять теги в файл при этом ничего не меняя в самой страничке открытой в Webbrowsere.


RWolf   (2010-12-02 13:02:00) [1]


> Ega23 ©   (02.12.10 11:59) [20]

это по поводу Doc := coHTMLDocument.Create as IHTMLDocument2;?
вроде нормально всё — создали объект, сразу же увеличили сч-к ссылок взятием интерфейса, на выходе из функции забываем интерфейс, сч-к=0 → объект самоуничтожился.


Ega23   (2010-12-02 11:59:00) [2]


> stas ©   (02.12.10 11:38) [17]


Ты, наверное, не используешь ReportMemoryLeaksOnShutdown.
А зря.


Демерго   (2010-12-02 11:42:00) [3]

то stas:

Спасибо большое, сейчас буду пробовать


Демерго   (2010-12-02 11:41:00) [4]

то sniknik:

тем что ты тут свою важность показываешь - никому не поможет. В реальной жизни кстати такая же ситуация


stas   (2010-12-02 11:38:00) [5]

Вот функция. Объявлены лишние переменные (т.к. я удалил ненужную часть) их надо поубирать.

function ExtractHtmlText(const html:string):string;
  var
       Cache:String;
       Doc: IHTMLDocument2;
       V: OleVariant;
       DocA: IHTMLElementCollection;
       DocElement: IHtmlElement;
       i:integer;
       List:TStringList;
       s,h:string;
begin

 Result:='';
 if html='' then exit;
 Doc := coHTMLDocument.Create as IHTMLDocument2;
 V := VarArrayCreate([0, 0], varVariant);
 V[0]:=Html;
 Doc.Write(PSafeArray(TVarData(v).VArray));
 Result:= (Doc.body.innerText);
end;


sniknik   (2010-12-02 11:27:00) [6]

> Ну не хочешь помогать нубам - не пиши
договорились. проверить проверю, раз обещал, но писать по этому поводу не буду. раз тебе так хочется.
т.к. не помогаю нубам, просто пытаюсь чему то научить начинающих программистов, избавить их от лишних проблем в процессе обучения.

> Я не программист.
а форум для программистов. пусть и раздел для начинающих.

> Я просто хочу написать небольшую программку для себя, а не стать одним из ВАС, о великие.
если не хочешь, то должен заказать программку для себя у программиста. ИМХО.


Демерго   (2010-12-02 11:17:00) [7]

С нетерпением жду вечера.
Моя версия дельфи - 6.

ЗЫ: боже, сколько тут на форуме ненужных понтов. Ну не хочешь помогать нубам - не пиши, не надо делать никому БОЛЬШОГО одолжения. А то такое впечатление что боги снизошли на землю чтобы поржать над жалким человечеством. Я не программист. Я просто хочу написать небольшую программку для себя, а не стать одним из ВАС, о великие.


Dennis I. Komarov   (2010-12-02 11:17:00) [8]


> тут работать надо.

ну или тут...


sniknik   (2010-12-02 11:12:00) [9]

> в Webbrowser НИКАК не изменилось?
у тебя с русским плохо? 2-х повторов до этого мало?

> Можно узнать версию дельфи?
нет конечно. можешь считать это "бзиком" но я не разглашаю в ответах сведения скрываемые в вопросах. кстати "махать кулаками после", т.е. говорить это сейчас без толку... (это мой способ "воспитания" спрашивающих, может до кого-то, кто прочитает, дойдет польза адекватного поведения)

> вот вставь эту ссылку для навигации webbrowsera - http://www.delphiexpert.ru/view_lesson.php?id=8
вечером обязательно, хотя и не думаю, что результат изменится, а на работе писать тестовые программки моветон. тут работать надо.


Демерго   (2010-12-02 11:04:00) [10]

вот вставь эту ссылку для навигации webbrowsera - http://www.delphiexpert.ru/view_lesson.php?id=8

после выполнения когда пропадает/меняется менюшка вверху страници на которой "Главная-Уроки-Скачать-Видеокурсы-Форум"


Демерго   (2010-12-02 11:04:00) [11]

*после выполнения кода


Демерго   (2010-12-02 10:56:00) [12]

to sniknik:

То есть у тебя после выполнения той процедуры - отображение документа в Webbrowser НИКАК не изменилось? Можно узнать версию дельфи?


sniknik   (2010-12-02 10:42:00) [13]

> Ты откомпилируй код что я скинул и посмотри как будет отображаться в webbrowser страница после выполнения кода.
абсолютно также как и до.

вообще проверка "чудес" это первое, что я делаю при намеке на них, очень уж хочется их увидеть... а слушать про них надоело.


Dennis I. Komarov   (2010-12-02 10:34:00) [14]

Мартышка к старости слаба глазами стала;
А у людей она слыхала,
Что это зло еще не так большой руки:
Лишь стоит завести Очки.
Очков с полдюжины себе она достала;
Вертит Очками так и сяк:
То к темю их прижмет, то их на хвост нанижет,
То их понюхает, то их полижет;
Очки не действуют никак.
«Тьфу пропасть!» говорит она: «и тот дурак,
Кто слушает людских всех врак:
Всё про Очки лишь мне налгали;
А проку на́-волос нет в них».
Мартышка тут с досады и с печали
О камень так хватила их,
Что только брызги засверкали.


Демерго   (2010-12-02 10:10:00) [15]

to Игорь Шевченко:

Я надеялся на совет или наводку на другую процедуру. Пока получил только хамство.

to sniknik: Ты откомпилируй код что я скинул и посмотри как будет отображаться в webbrowser страница после выполнения кода.

to Anatoly Podgoretsky: чего ты полез в эту тему если у тебя кром упреков больше ничего нету.

to Ega23: тебе тоже спасибо за оказанную помощь в данном вопросе. Ты мне ОЧЕНЬ "помог".


Ega23   (2010-12-01 23:43:00) [16]


> Чего ты это полез в TWebBrowser ничего не понимая.


Чукча не читатель, чукча писатель.


Anatoly Podgoretsky   (2010-12-01 20:20:00) [17]

Чего ты это полез в TWebBrowser ничего не понимая.


sniknik   (2010-12-01 19:14:00) [18]

> Можно как-то это обойти?
что обойти? код ничего нигде не портит.

> ЗЫ: если нет НИЧЕГО по сути вопроса то не пишите, пожалуйста, НИЧЕГО.
у тебя нет сути вопроса, только голословное утверждение, что кто то чего то портит... будь добр, последуй своему совету и не спрашивай НИЧЕГО, раз не можеш по сути.


Игорь Шевченко   (2010-12-01 19:04:00) [19]

Демерго   (01.12.10 18:24) [2]

Если найденный код тебя не устраивает, ты предлагаешь нам поискать другой код ? Или сам поищешь ?


Демерго   (2010-12-01 18:24:00) [20]

я смотрю тут серьезные советы пошли от конкретных пацанов.

ЗЫ: если нет НИЧЕГО по сути вопроса то не пишите, пожалуйста, НИЧЕГО. В троллинге не нуждаюсь, честно


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо