Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Загрузка страницы, чтение значений элементов, загрузка следующей страницы (https://javascript.ru/forum/events/5480-zagruzka-stranicy-chtenie-znachenijj-ehlementov-zagruzka-sleduyushhejj-stranicy.html)

sitestyler 17.10.2009 23:48

Загрузка страницы, чтение значений элементов, загрузка следующей страницы
 
Доброго времени суток!
Есть необходимость написать что-то типа анализатора набора веб-страниц. Функционал следующий: загружаем страницу, читаем значения некоторых полей, сохраняем их в файл, читаем следующую страницу из списка...
Пробовал это все на php+cURL написать, но наличие тьмы ajax & javascript на анализируемых страницах очень усложняет задачу...

По диагонали прочел пару глав из "JavaScript. Подробное руководство, 5 е издание", вычитал оттуда:
location = "http://ya.ru";

и
document.getElementById("elementId").getAttribute("name", "value") ;

Но с лету запустить это не удалось.
Потому, что надо сначала подождать окончания загрузки документа, возможно как то обработать что-то типа Document.OnDocumentCompleted() и в этом обработчике прочитать значения элементов, и вызвать загрузку следующей страницы.

Как это реализовать?

x-yuri 18.10.2009 23:46

о каких элементах речь, какую информацию нужно из страницы достать?

arma 19.10.2009 00:08

всмысле надо дождаться загрузки страници боди-онлоад, затем пропарсить страницу, затем что-то с этим отпарсиным сделать, а потом перейти на другую страницу? я всё правильно понял?

sitestyler 19.10.2009 12:48

Цитата:

Сообщение от arma (Сообщение 32720)
всмысле надо дождаться загрузки страници боди-онлоад, затем пропарсить страницу, затем что-то с этим отпарсиным сделать, а потом перейти на другую страницу? я всё правильно понял?

Именно. Чистым JS не вышло - там из соображений безопасности не дают доступ к странице, с другого домена. То есть: скрипт создает iframe грузит в него страницу, и не может получить доступ к ее элементам.

sitestyler 19.10.2009 12:50

Да. Забыл. если фрейму добавить обработчик onLoad то код этого обработчика тоже не может получить доступ к элементам страницы. вот так все хитро

e1f 19.10.2009 12:52

PHP-скрипт. Или Perl(LWP). И не используйте то, что бессмысленно использовать для данной задачи.

arma 21.10.2009 12:20

Если страницу можно вывести в фрейм, то её можно предварительно прочитать пхп - > Читаеш нужную страницу - > Печатаеш "myvar=Содержимое прочитанного;" и фсё, на онлоад своей страници парсиш майвар с помощью JS. А вобще ничего не мешает и с помощью пхп отпарсить.


Часовой пояс GMT +3, время: 19:25.