Форум сайта python.su
Есть ли способ спарсить информацию с сайта, которая генерируется javascript'om?
В гугле нашел способы с QT, selenium, другие вариации с запуском полноценного браузера
Но все это очень медленно и тяжело
Офлайн
568
Ок, у меня есть сайт, на которой JS каждую секунду обновляет содержимое страницы по определенному алгоритму. Каков результат парсинга?
Офлайн
FishHookТо есть нельзя? или что?
Ок, у меня есть сайт, на которой JS каждую секунду обновляет содержимое страницы по определенному алгоритму. Каков результат парсинга?
Офлайн
568
XionТо есть вам придется выполнять JS в любом случае. Каким образом - думать вам, запускать страницу в настоящем браузере (то есть гарантированно получить то же, что и пользователь) мне кажется наиболее разумным.
То есть нельзя? или что?
Офлайн
24
А JS откуда данные берет ? Можно просто посмотреть какие запросы посылает браузер и какие ответы получает.
Офлайн
568
aybДа откуда угодно, например, данные на страницу могут загружаться вместе с загрузкой самой страницы, т.е. безо всякого аякса. Ну и клиент вполне может получать данные с нескольких разных источников и агрегировать их в соответствии со своей логикой. Или даже с одного источника и опять же их как-то агрегировать/сортировать/фильтровать/упорядочивать - не важно.
А JS откуда данные берет ?
Отредактировано FishHook (Янв. 17, 2016 19:16:52)
Офлайн
24
Ну так а зачем выполнять js ? Можно посмотреть откуда данные приходят и забирать их напрямую.
Офлайн
568
aybПотому что тебе нужно то, что показывают пользователю, а не то, что приходит скрипту по сети.
Ну так а зачем выполнять js ?
Офлайн
568
Ну и, как я уже говорил, джаваскрипта и аякса может вообще не быть, тупенько страничка генерится сразу с готовой табличкой. Т.е. у тебя есть только HTML, как, например, в туториале джанги, какой там аякс, какие данные?
Офлайн
24
FishHook
Потому что тебе нужно то, что показывают пользователю, а не то, что приходит скрипту по сети.
Это могут быть сильно разные данные. Это во-первых. Во-вторых, когда тебе надо распарсить множество сайтов схожей тематики, тебе гораздо дешевле работать с ДОМ, чем вникать в логику работы каждой отдельной страницы с кучей чужого минимизированного джаваскрипта.
Отредактировано ayb (Янв. 17, 2016 20:03:10)
Офлайн