Модераторы: Snowy, Poseidon, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Сохранить страницу IE. 
:(
    Опции темы
mspuz
Дата 9.6.2009, 22:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 304
Регистрация: 20.6.2005
Где: Ногинск

Репутация: нет
Всего: нет



Имеется сайт - netlab.ru. Мне необходимо достать инфу с него. Использую TWebBrowser, захожу на нужную страницу и сохраняю ее. Затем парсю как обычный txt и узнаю, какие там используются артикулы. После этого выполняю Navigate(JavaScript:desc(1+артикул)) и открывается страница с характеристикой продукта, но открывается она все время в новом окне IE и там напрочь отсутствует возможность сохранить ее. Правда есть возможность распечатать, а значит можно послать на виртуальный принтер и перевести в pdf, а там уж и в html для дальнейшего парсинга таблиц свойств. Вопрос - можно ли сохранить страницу из нового окна и как это сделать? Если несложно, пройдите на этот сайт и просто постарайтесь открыть характеристику любого товара. Спасибо.
PM MAIL   Вверх
Romikgy
Дата 10.6.2009, 00:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 3
Всего: 146



Код

<a href="JavaScript:descr('130789')">(Арт. 1130789)&nbsp;&nbsp;LCD PHILIPS 19"  
190V9FB {Black,  0.294,  300cd / m2,  800:1,  160h / 160v,  5ms}</a><a href="descr_price_ID.asp?id=130789" 
target="_blank"><img src="images/dot_conf.gif" border=0 width="1" height="1"></a>

Код

function descr(ID) {
    open("descr.asp?id=" + ID, "_blank", "resizable=0,menubar=0,scrollbars=1,width=720,height=480,left=100,top=60");
    }



в конце запрос типа 
http://netlab.ru/descr.asp?id=130789
думаю при парсинге сможешь выделить из JavaScript:descr('130789')  это 130789 и добавить к "descr.asp?id=" 

Это сообщение отредактировал(а) Romikgy - 10.6.2009, 00:03


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
Keeper89
Дата 10.6.2009, 00:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 6
Всего: 58



Долго смотрел материал по WebBrowser, нашел два варианта.

Вариант №1.
Открытие в своем новом окне (источник):
Код

procedure TForm1.WebBrowser1NewWindow2(Sender: TObject;
  var ppDisp: IDispatch; var Cancel: WordBool);
var
  NewWindow: TForm1;
begin
  // a new instance of the form will be created
  NewWindow := TForm1.Create(self);

  NewWindow.Show;
  ppDisp := NewWindow.Webbrowser1.DefaultDispatch;
end;

Т.е. создаем копию своей же формы, где имеется кнопка сохранения кода и т.д.

Вариант №2.
Открытие в своем же окне с использованием вспомогательного браузера (источник):
Код

procedure TForm1.Button1Click(Sender: TObject);
begin
  WebBrowser1.Navigate('http://netlab.ru/');
  WebBrowser2.Navigate('about:blank');
end;

procedure TForm1.WebBrowser1NewWindow2(Sender: TObject;
  var ppDisp: IDispatch; var Cancel: WordBool);
begin
  ppDisp := WebBrowser2.ControlInterface;
end;

procedure TForm1.WebBrowser2BeforeNavigate2(ASender: TObject;
  const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
  Headers: OleVariant; var Cancel: WordBool);
begin
  if assigned(WebBrowser2.Document) then
  begin
    WebBrowser2.Left := 5000;
    WebBrowser1.Navigate(URL);
    Cancel := True;
  end;
end;

К последнему прикрепляю архив.

Присоединённый файл ( Кол-во скачиваний: 3 )
Присоединённый файл  Project1.rar 209,10 Kb


--------------------
PM MAIL WWW   Вверх
mspuz
Дата 10.6.2009, 22:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 304
Регистрация: 20.6.2005
Где: Ногинск

Репутация: нет
Всего: нет



Romikgy, 
Keeper89, Огромное спасибо, пока нет времени попробовать, но как протестю отпишусь.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Сети"
Snowy
Poseidon
MetalFan

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.0425 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.