ЗенноПостер дописывает невидимые теги

Lollipop

Client
Регистрация
06.09.2012
Сообщения
271
Благодарностей
27
Баллы
28
Когда ЗП формирует страницу, он дописывает лишние
<div style="visiblity:hidden" id="zp_fr_hl_top_hl"></div><div style="visiblity:hidden" id="zp_fr_hl_left_hl">....

Как можно этого избежать?
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 714
Баллы
113
Браузеры по разному отдают исходный код страниц. Вам необходимо ориентироваться на код страницы в PM, а не в несвязанном с программой браузере.
 

Lollipop

Client
Регистрация
06.09.2012
Сообщения
271
Благодарностей
27
Баллы
28
Загрузил первую попавшуюся страницу.
В конце дописан лишний код, которого не в оригинальной странице загруженной в ФФ
В Page.Source лежит
Код:
<div id="zp_fr_hl_top_hl" style="visiblity:hidden"></div><div id="zp_fr_hl_left_hl" style="visiblity:hidden"></div><div id="zp_fr_hl_right_hl" style="visiblity:hidden"></div><div id="zp_fr_hl_bottom_hl" style="visiblity:hidden"></div><font id="zp_fr_hl_label" style="visiblity:hidden"></font></body></html>
Это как раз в коде ПМ, а не каком то браузере.
Мне это несколько мешает.

И мне кажется, этот код стали встраивать не так давно.
 
Последнее редактирование:
  • Спасибо
Реакции: LightWood

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 714
Баллы
113
данный код добавляется только в PM, это рамка которой обводится элемент.
собственно так делают все браузеры, когда ты нажимаешь исследовать элемент и ничего плохого в этом нет.
 

Lollipop

Client
Регистрация
06.09.2012
Сообщения
271
Благодарностей
27
Баллы
28
Ну как же ничего плохого.
Раньше я получал информацию о том что страница загрузилась полностью по кончному тегу </body> (не всегда это так, но будем считать...)
А теперь что? Ерунда какая-то получается.
Если страница не прогрузилась, там все равно висит этот милый код, с вляпанным </body>.
 

Lexicon

Client
Регистрация
27.12.2012
Сообщения
1 775
Благодарностей
901
Баллы
113
Извиняюсь... а вы чем получаете информацию о завершении прогрузки страницы? оно ж вроде пока не прогрузится не даст никуда дальше идти
 

Lollipop

Client
Регистрация
06.09.2012
Сообщения
271
Благодарностей
27
Баллы
28
Если ограничить время загрузки страница, то очень даже пойдет
instance.ActiveTab.NavigateTimeout = (int) MyNavigateTimeout;
или экшен есть для этого, синенький.
При этом лучше придушить Аджакс, Флеш и Гет/Поп.

Ну а потом выпарсить "/body" с Source...

Есть еще вариант Get запросом узнать ожидаемый размер страницы и сравнить, но это гимор.
 

Lexicon

Client
Регистрация
27.12.2012
Сообщения
1 775
Благодарностей
901
Баллы
113
гм если уж совсем ударяться в код то я от webbrowser ожидают завершения всех телодвижений следущим кодом
Код:
private void wb_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            if (e.Url.AbsolutePath == (sender as WebBrowser).Url.AbsolutePath) return;
            {
                loaded = true;
            }
        }
       
        private void wb_Download_begin(object sender, WebBrowserNavigatedEventArgs e)
        {
            loaded=false;
        }
Ну и соответственно все это обрабатывается в теле циклом
Код:
while (!loaded)
{
Application.DoEvents();
}
 

Lollipop

Client
Регистрация
06.09.2012
Сообщения
271
Благодарностей
27
Баллы
28
Хорошо, но мне нужно узнать совсем другое - прогрузилась ли страница до конца (предполагаем /body)
или нет. Если знаете подскажите
 

Lexicon

Client
Регистрация
27.12.2012
Сообщения
1 775
Благодарностей
901
Баллы
113
так экшен не активен, пока страница не прогружена полностью. Если в процессе выполнения что то меняется аяксом, то это уже тегом боди не отследить. Вы можете привести пример, где вам мешает жить этот тег?
Вы через ЗП работаете или через код креатор? c# или php или это вообще не Зенно)))
 

Lollipop

Client
Регистрация
06.09.2012
Сообщения
271
Благодарностей
27
Баллы
28
Ничего Аяксом не меняется. Проблема в том, что разработчики решили зачем-то модифицировать исходный код страницы (загруженной страницы) ради какой-то рамочки, которой я никогда и не видел.

Пример: Загружаем страницу. Допустим произошел какой-то сбой и не загрузилось или совсем ничего или часть страницы.
Давным давно у меня этот момент отлавливал кусок кода, который парсил Source и искал там завершающий </body>,
а сейчас получается так: Настоящего, Всамделешнего тега </body> нет, а есть нарисованный, лубяной, код который я приводил выше.

Работаю я через ЗП. Си и ПХП тут совсем не причем.
 
Последнее редактирование:

Lexicon

Client
Регистрация
27.12.2012
Сообщения
1 775
Благодарностей
901
Баллы
113
что то вас параноя одолела...
ну запилите сниппет и вставляйте из IE в инстанс... но имхо косяков больше будет
 

Lollipop

Client
Регистрация
06.09.2012
Сообщения
271
Благодарностей
27
Баллы
28
От ведь.
Давайте вернемся к топику, а.
какой сниппет, к чему он, нинадо никаких сниппетов
Мне мешает долбанная допись кода и я спрашиваю - можно её как нибудь выпилить.

Rostonix видимо имеет ввиду, что эта допись не появится при исполнении в ЗП, но все никак руки не дойдут проверить, если я правильно его понял.
 

Lexicon

Client
Регистрация
27.12.2012
Сообщения
1 775
Благодарностей
901
Баллы
113
Ну rostonix виднее в любом случае))) проверяйте - а выпилить как то по другому код, который вам там мешается, минуя костыли на сниппетах мне не представляется возможным. Конечно, можно дергать их из тела уже загруженной в ПМ страницы, но это не решает вашей задачи
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 714
Баллы
113
Rostonix видимо имеет ввиду, что эта допись не появится при исполнении в ЗП, но все никак руки не дойдут проверить, если я правильно его понял.
Да, правильно. Это добавляется только в PM.
 

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)