Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.09.2007, 13:04   #1
Valkiria
 
Регистрация: 23.09.2007
Сообщений: 7
Восклицание Перевод текста из HTML в txt

Помогите пожалуйста написать программу перевода содержимого из HTML страницы в текстовый документ с расширением doc или txt. Нужно что ьбы все данные: текст, таблицы и т.д переносились в текстовый файл. Кто может подскажите как это сделать!
Valkiria вне форума Ответить с цитированием
Старый 24.09.2007, 12:13   #2
Alex21
With best regards
Участник клуба
 
Регистрация: 20.04.2007
Сообщений: 1,448
По умолчанию

Вот код:
Код:
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ActiveX, OleCtrls, SHDocVw, StdCtrls;
type
  TForm1 = class(TForm)
    WebBrowser1: TWebBrowser;
    Button1: TButton;
    SaveDialog1: TSaveDialog;
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    procedure SaveHTMLSourceToFile(const FileName: string;
  WB: TWebBrowser);
  end;
var
  Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.SaveHTMLSourceToFile(const FileName: string;
  WB: TWebBrowser);
var
  PersistStream: IPersistStreamInit;  
  FileStream: TFileStream;  
  Stream: IStream;  
  SaveResult: HRESULT;  
begin  
  PersistStream := WB.Document as IPersistStreamInit;  
  FileStream := TFileStream.Create(FileName, fmCreate);  
  try
    Stream := TStreamAdapter.Create(FileStream, soReference) as IStream;  
    SaveResult := PersistStream.Save(Stream, True);  
    if FAILED(SaveResult) then  
      MessageBox(Handle, 'Fail to save HTML source', 'Error', 0);  
  finally
    FileStream.Free;  
  end;
end;  

procedure TForm1.Button1Click(Sender: TObject);
begin
if SaveDialog1.Execute then
    SaveHTMLSourceToFile(SaveDialog1.FileName+'.txt', WebBrowser1);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
WebBrowser1.Navigate('http://programmersforum.ru');
end;
end.
Alex21 вне форума Ответить с цитированием
Старый 25.09.2007, 16:00   #3
Valkiria
 
Регистрация: 23.09.2007
Сообщений: 7
Радость Спасибо за код

Большое тебе спасибо! Данные сохраняются в формате tхt, но только вместе с тегами, как сделать так, что бы не было тегов?
Valkiria вне форума Ответить с цитированием
Старый 25.09.2007, 16:12   #4
Alex21
With best regards
Участник клуба
 
Регистрация: 20.04.2007
Сообщений: 1,448
По умолчанию

Меняем формат:
Код:
if SaveDialog1.Execute then
    SaveHTMLSourceToFile(SaveDialog1.FileName+'.doc', WebBrowser1);
Alex21 вне форума Ответить с цитированием
Старый 28.09.2007, 17:27   #5
Valkiria
 
Регистрация: 23.09.2007
Сообщений: 7
По умолчанию

А как можно сделать что бы HTML страничка загружалась в WebBrowser с жесткого диска и можно было бы выбирать какую страничку открыть, что для этого нужно использовать OpenDialog или что то еще?
Valkiria вне форума Ответить с цитированием
Старый 29.09.2007, 22:49   #6
Alex21
With best regards
Участник клуба
 
Регистрация: 20.04.2007
Сообщений: 1,448
По умолчанию

Достаточно вызвать такой код:
Код:
WebBrowser1.Navigate('h:\111.htm');
или
Код:
WebBrowser1.Navigate(edit1.text);
во втором случае путь должен быть прописан в Edit1
Alex21 вне форума Ответить с цитированием
Старый 09.10.2007, 20:41   #7
Valkiria
 
Регистрация: 23.09.2007
Сообщений: 7
Восклицание Вопрос

А как можно сделать так что бы при переводе HTML страницы в txt сохранялся адрес откуда была скачена страница и сохранялись таблицы или хотя бы их структура в текстовом документе, подскажите пожалуйста очень очень нужно!!!!!!
Valkiria вне форума Ответить с цитированием
Старый 09.10.2007, 20:52   #8
Valkiria
 
Регистрация: 23.09.2007
Сообщений: 7
По умолчанию

Подскажите нет ли какой-нибудь ссылки на исходник программы конвертирующий страницу html в один из таких форматов: txt, doc, rtf, pdf и т.д Или на какую-нибудь литературу из этой серии?
Valkiria вне форума Ответить с цитированием
Старый 10.10.2007, 18:39   #9
Alex21
With best regards
Участник клуба
 
Регистрация: 20.04.2007
Сообщений: 1,448
По умолчанию

Начнем с того, что корректное отображение Веб-страницы может быть только в браузере (или при использовании компонента браузера).

Формат txt - по своей сути является только лишь текстовым файлом, поэтому таблицы, или что-либо еще загрузить туда не получится.

Объясните что вы хотите получить в результате?
Alex21 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
перевод на русский Ensoph Общие вопросы Delphi 3 19.05.2008 10:09
Перевод значений DeDoK Общие вопросы Delphi 3 19.05.2008 08:39
перевод в последовательность Janette Паскаль, Turbo Pascal, PascalABC.NET 2 23.03.2008 14:11
Авто ввод текста на html-странице Vladimir K. Общие вопросы Delphi 6 04.02.2008 22:59
Перевод фоток в чб 1quick1 PHP 1 27.12.2006 20:18