Здравствуйте уважаемые программисты.
Мне надо сделать такая программа, чтобы с нажатием одного кнопка она зашла на определенную url(internet page) и чтобы сохранил содержимое web страница как текстовый файл.
Я использовал компонент WebBrowser и зашёл на определенную web страница и не смог сохраниться содержимое страница с программном путем, так как не нашёл method WebBrowser а “Saveas”
Пожалуйста, дайте мне немного консультация по вышеуказанном вопросам
Заранее благодарю,
из Бухары
Уважаемые авторы вопросов! Большая просьба сообщить о результатах решения проблемы на этой странице. Иначе, следящие за обсуждением, возможно имеющие аналогичные проблемы, не получают ясного представления об их решении. А авторы ответов не получают обратной связи. Что можно расценивать, как проявление неуважения к отвечающим от автора вопроса.
07-05-2008 03:01
Hamza Ostonov писал
(html файл нелзя открыт блокнотом , можно но не понятно, а текстовый файл можно)
Почему - можно. Просто поменяй расширение ".html" на ".txt" и читай себе блокнотом.
я последователно хотел обработат текстовый файл
Думаю что html-файл обрабатывать проще. Потому что не понятно в каком виде (какой структуры) будет текстовый файл после преобразования. Думаю что существуют HTML Parser'ы, которые можно использовать в Delphi.
Если вы используете TWebBrowser, то содержимое веб-страницы можно обрабатывать прямо в нем, через (WebBrowser.Document as IHTMLDocument2).All ... (см. IHTMLDocument2)
Для того, чтобы вызвать диалог "Save As", см. TWebBrowser.ExecWB
Я вас спросил как сохранит содержимое url(web страница) как текстовый файл, а не как html файл,
я последователно хотел обработат текстовый файл.
(html файл нелзя открыт блокнотом , можно но не понятно, а текстовый файл можно)
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
{ В ответ на уничтожение объекта TFileStream, передаём
soReference в конструктор TStreamAdapter. }
FileStream.Free;
end;
end;
Если вы заметили орфографическую ошибку на этой странице, просто выделите ошибку мышью и нажмите Ctrl+Enter. Функция может не работать в некоторых версиях броузеров.