1. Задавайте здесь вопросы о коде, которые не подходят в другие разделы, такие как:
    Дизайн > Верстка
    PHP > Как сделать на PHP
    Скрыть объявление

Парсинг страниц с JavaScript

Тема в разделе "Web Coding", создана пользователем pk2002, 30 июн 2007.

Статус темы:
Закрыта.
Модераторы: latteo
  1. pk2002

    pk2002

    Регистр.:
    14 ноя 2006
    Сообщения:
    382
    Симпатии:
    350
    Подскажите, плиз, можно ли каким-то образом в скриптах обрабатывать клиентский жабаскрипт.

    Т.е. при выполнении пользователем в браузере определенных действий, кликов и т.п. вызываются соответствующие функции и меняется контент. Нужно в парсере эмулировать эти нажатия и получать контент.

    Интересуют решения для перла, пхп
     
  2. Nafania

    Nafania

    Регистр.:
    24 мар 2007
    Сообщения:
    167
    Симпатии:
    46
    Если я правильно понял тему, то то что вам надо это AJAX, а точнее вот эта реализация http://dklab.ru/lib/JsHttpRequest/
     
  3. pk2002

    pk2002

    Регистр.:
    14 ноя 2006
    Сообщения:
    382
    Симпатии:
    350
    Неправильно поняли
    Мне нужно для парсера прикрутить обработку жаваскриптов. Т.е. парсятся страницы с яваскриптами, вот их и нужно обрабатывать. Вернее контент после выполнения яваскриптов. Вот как их выполнить в парсере и получить результат не знаю.

    P.S. Что такое AJAX я знаю
     
  4. Nafania

    Nafania

    Регистр.:
    24 мар 2007
    Сообщения:
    167
    Симпатии:
    46
    А, понял вас.
    Так этого даже гугл не умеет делать с его поисковыми ботами :)
    ИМХО, это нереально - написать браузер с полноценной поддержкой ява-скрипта на пхп/перл.
     
  5. pk2002

    pk2002

    Регистр.:
    14 ноя 2006
    Сообщения:
    382
    Симпатии:
    350
    Ну есть варианты с использованием браузеров например Firefox, IE.
    Может есть какой-то текстовый браузер с поддержкой яваскриптов, чтоб его прикрутить к этому делу
    Больше под линух интересует
     
  6. Nafania

    Nafania

    Регистр.:
    24 мар 2007
    Сообщения:
    167
    Симпатии:
    46
    Каким образом вы будете использовать визуальный браузер?
    Ну допустим вы через него откроете страницу, нужную вам, и выполните какой-то скрипт. Как вы узнаете результат выполнения?
    Никак - ведь он будет только в окне браузера.
    Текстовые браузеры существуют в природе, названий так с ходу не вспомню, просто знаю что они есть, но меня берут большие сомнения насчет того, что они полноценно понимают ява-скрипт (да и понимают ли вообще? :) ).
     
  7. pk2002

    pk2002

    Регистр.:
    14 ноя 2006
    Сообщения:
    382
    Симпатии:
    350
    Насчет браузеров - есть Selenium и для перла модуль WWW::Selenium
    Он позволяет получать результат выполнения

    Вот текстовых браузеров с полноценной поддержкой жаваскрипт тоже не нашел. У тех что есть (links, elinks), к сожалению ограниченная поддержка js

    Есть еще Spidermonkey (http://www.mozilla.org/js/spidermonkey), мож его как-то можно прикрутить.
     
  8. spacer123

    spacer123 Постоялец

    Регистр.:
    8 дек 2006
    Сообщения:
    74
    Симпатии:
    9
    Большинство действия напрямую будет завязано с браузером и их выполнение будет невозможно в контексте парсера.
    Думаю нужно писать свой мини-интерпретатор js для конкретных ситуаций.
     
    pk2002 нравится это.
  9. Jameson

    Jameson Читатель

    Заблокирован
    Регистр.:
    25 июн 2007
    Сообщения:
    406
    Симпатии:
    92
  10. pk2002

    pk2002

    Регистр.:
    14 ноя 2006
    Сообщения:
    382
    Симпатии:
    350
    Selenium как раз является примером связки браузеров с внешним кодом. Не устраивает тяжеловесность неконсольных браузеров, с которыми может работать эта система. Может есть какие-то похожие альтернативы данного продукта
    Понятно, что для конкретных случаев можно выкрутиться в зависимости от ситуации. Просто ищу универсальное решение, применимое в большинстве случаев.
    Поиски консольного браузера с полноценной поддержкой жаваскрипт увы не увенчались успехом
     
Статус темы:
Закрыта.