|
|
|
Парсинг HTML страничек | ☑ | ||
|---|---|---|---|---|
|
0
mzelensky
19.03.13
✎
12:37
|
Доброго всем.
Произвожу парсинг определенных страничек. В принципе все работает, но иногда вылазиет очень не приятный глюк! Запрашиваю нужную страничку и потом произвожу ее разбор.Но если скорость интернета падает или на странице много информации, то она открывается как-бы с задержкой и когда я получаю ее "содержимое", порой бывает, что оно не полное. Как запросить страничку, ДОЖДАТЬСЯ ЕЕ ПОЛНОЙ ПОДГРУЗКИ, а уж потом что-то делать?! |
|||
|
1
Megas
19.03.13
✎
12:40
|
Чем парсиш?
|
|||
|
2
acsent
19.03.13
✎
12:40
|
чем грузишь?
|
|||
|
3
mzelensky
19.03.13
✎
12:41
|
(1) руками! Просто получаю содержимое:
Адрес="http://бла-бла-адрес"; ЭлементыФормы.ПолеHTMLДокумента.Перейти(Адрес); ТекстЧистый=""; ТекстСТегами=""; попытка ТекстЧистый= ЭлементыФормы.ПолеHTMLДокумента.Документ.body.innerText ; //ПЕРВОНАЧАЛЬНЫЙ ТЕКСТ //ТекстСТегами=ЭлементыФормы.ПолеHTMLДокумента.Документ.body.innerHTML; исключение Сообщить("Произошла ошибка получения запроса! Второй вариант - запрашиваемой страницы просто НЕТ!"); возврат; конецПопытки; |
|||
|
4
ИсчадиеADO
19.03.13
✎
12:42
|
там же событие есть при загрузке
|
|||
|
5
Megas
19.03.13
✎
12:42
|
(3) Платформа какая?
в "ПолеHTMLДокумента" никак не узнать что она догрузилать |
|||
|
6
acsent
19.03.13
✎
12:43
|
зачем ие использовать то? юзай http соединение или curl
|
|||
|
7
zladenuw
19.03.13
✎
12:43
|
(5) а это тогда для чего ? ДокументСформирован()
|
|||
|
8
mzelensky
19.03.13
✎
12:43
|
(5) 8.2.16.362
|
|||
|
9
Megas
19.03.13
✎
12:43
|
(7) Хз, у меня не сработало
|
|||
|
10
mzelensky
19.03.13
✎
12:44
|
(7) это ты откуда выдрал?
|
|||
|
11
zladenuw
19.03.13
✎
12:44
|
(9) ну как обычно метод есть. а хер работает :)
|
|||
|
12
Megas
19.03.13
✎
12:44
|
(8) в 8.2 есть лучшие объекты.
что то типа ЧтениеHTML |
|||
|
13
zladenuw
19.03.13
✎
12:45
|
ПолеHTMLДокумента.ДокументСформирован (HTMLDocumentField.DocumentComplete)
ПолеHTMLДокумента (HTMLDocumentField) ДокументСформирован (DocumentComplete) Синтаксис: ДокументСформирован() Описание: Возникает, когда HTML-документ построен и готов к использованию. |
|||
|
14
mzelensky
19.03.13
✎
12:45
|
(6) да как-то сподручнее так.
А с "http соединение или curl" какие варианты?! |
|||
|
15
mzelensky
19.03.13
✎
12:45
|
(13) и как мне его дождаться?! Этого события?
|
|||
|
16
Megas
19.03.13
✎
12:46
|
Я в 8.1 делал через COM InternetExplorer.application всё хорошо но он жрёт память, а если освобождать то он на себя всегда переключается при создании нового.
Думаю как по другому сделать. |
|||
|
17
Megas
19.03.13
✎
12:47
|
(13) У меня не сработал, повторюсь
|
|||
|
18
mzelensky
19.03.13
✎
12:48
|
(12) что-то в СП не совсем пример понятен...использования этого
|
|||
|
19
Megas
19.03.13
✎
12:50
|
(18) Спроси у людей как деалют они, или по поиску полазь, даже на мисте много примеров.
|
|||
|
20
Kreont
19.03.13
✎
12:53
|
Вроде такая последовательность чтения есть:
ФайлРезультат = ПолучитьИмяВременногоФайла(); ХТТП.ОтправитьДляОбработки(ПОСТЗапрос,Ресурс,ФайлРезультат,Заголовки); ЧтениеHTML = Новый ЧтениеHTML; ЧтениеHTML.ОткрытьФайл(ФайлРезультат); ПостроительDOM = Новый ПостроительDOM; ДокументHTML = ПостроительDOM.Прочитать(ЧтениеHTML); |
|||
|
21
Reset
19.03.13
✎
12:54
|
(14) HTTPСоединение.Получить()
|
|||
|
22
zladenuw
19.03.13
✎
12:57
|
||||
|
23
Megas
19.03.13
✎
12:58
|
(22) Это через COM InternetExplorer.application
|
|||
|
24
mzelensky
19.03.13
✎
13:05
|
(20) я как-то пробовал работать через данный метод (в другйо ситуации) - получалась одна хня :( и я бросил эту дурацкую затею.
Правда в том случае нужно было Post запросы посылать хитрые |
|||
|
25
mzelensky
19.03.13
✎
13:08
|
(19) В "ЧтениеHTML", как я понял, идет последовательное чтение документа по тегам. Мне это не канат, т.к. страницы содержат очень много "мусора" и я просто запарюсь все это разбирать.
|
|||
|
26
Megas
19.03.13
✎
13:14
|
(25) Ну вроде типа того это DOM, обычно он удобен.
Я Фиг знает что тебе надо делать, можно воообще по извращенски: КопироватьФайл(СсылкаНаСайт,"C:\temp.html"); |
|||
|
27
zladenuw
19.03.13
✎
13:17
|
а если добавить активХ windows web browser
там есть метод NavigateComplete |
|||
|
28
acsent
19.03.13
✎
13:19
|
(14) минус твоего варианта, что нельзя автономно запускать на сервере по расписанию
|
|||
|
29
zladenuw
19.03.13
✎
13:21
|
можно еще так v8: Помогите с парсером Html
|
|||
|
30
mzelensky
19.03.13
✎
13:27
|
(7) фигня метод - работает через раз
|
|||
|
31
mzelensky
19.03.13
✎
13:28
|
(14) мне и не надо автономно. Мне нужно чтобы задал параметры, нажал большую кнопку и ушел курить!
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |