Пишу программу используя компонент Gecko. И встретился с одной проблемой. Я зашел на сайт и мне нужно автоматически собрать все ссылки, можно ли это реализовать не обрабатывая html код смому, то есть как в TWebBrowser просто получить список ссылок в открытом окне. .
еще возможно как вариант, сохрани страницу в файл и парсь сам файл. с кодом не помогу так как нет у меня сейчас Gecko
Для TWebBrowser должен быть установлен IE, а на Linux'e ведь его нет)))))) Да и так проблемы из-за версии IE могут быть. .
уже 100500 спрашиваю "как поставить Gecko .. возможно в этот раз мне повезет)) вроде все правильно делаю но не получается ... кто уже сделал этот подвиг? как? ПС гуглить пробовал ... первые два недели
Code: [DCC Error] nsXPCOMGlue.pas(374): E2291 Missing implementation of interface method nsIDirectoryServiceProvider.GetFile (Delphi XE)
Code: procedure WB_Save(WB: TWebbrowser); var Dispatch: IDispatch; CommandTarget: IOleCommandTarget; vaIn: OleVariant; vaOut: OleVariant; begin if WB_DocumentLoaded(WB) then // ensure not busy if not (WB.Busy) then begin Dispatch := WB.Document; Dispatch.QueryInterface(IOleCommandTarget, CommandTarget); vaIn := ''; vaOut := ''; try CommandTarget.Exec(PGUID(nil), OLECMDID_SAVEAS, OLECMDEXECOPT_DONTPROMPTUSER, vaIn, vaOut); except {handle exceptions} on E: Exception do MessageDlg('ERROR: Unable to show Save As dialog. ' + #13 + E.ClassName + ': ' + E.Message + '.', mtError, [mbOk], 0); end; {try..except..} end; end; Вот еще полезная функция Code: function WB_DocumentLoaded(WB: TWebbrowser): Boolean; var iDoc: IHtmlDocument2; begin Result := False; if Assigned(WB) then begin if WB.Document <> nil then begin WB.ControlInterface.Document.QueryInterface(IHtmlDocument2, iDoc); Result := Assigned(iDoc); end; end; end;
Да с тормозил. нет у меня на машине Gecko и нет желания ставить. Вот по гуглил, нашел такую строку проверяй mzGecko.ExecWB(OLECMDID_SAVEAS,OLECMDEXECOPT_PROMPTUSER {OLECMDEXECOPT_DODEFAULT}, PageFilename); вот тут http://delphi.mozdev.org/source.html есть сырец мини браузера на Gecko скачай посмотри
Я уже весь гугл перерыл)))))) Что только непробовал ввести в поиск. И это я тоже нашел, там нет вообще такой порцедуры)))))))))))) Там какие то другие компоненты используются ..
ройся в официальной доке https://developer.mozilla.org/en/Embedding_Mozilla может чтонить там и найдешь Вот тут вот покопайся http://doxygen.db48x.net/mozilla/html/classes.html пожет что и найдешь