Форум сайта python.su
Доброго времени суток, прошу помощи, пытаюсь парсить страницу
http://kinomax.ru/kirov/schedule.htm
<div id="mp-films-schedule-list"
from grab import Grab g1 = Grab() g1.go('http://kinomax.ru/kirov/schedule.htm') print g1.xpath_text('//div[@id="mp-films-schedule-list"]')
Прикреплённый файлы:
1.PNG (38,5 KБ)
Офлайн
chuffey
p.s. точнее до div доходит но он пустой
<div id="mp-films-schedule-list" class=""></div>
Офлайн
В том и проблема , что страница не прогружается полностью. А если открыть в браузере то видно на прикрепленной картинке что он далеко не пустой.
(прошу прощения возможно привел не тот адрес страницы)
http://kinomax.ru/kirov/
<div class="filmheader">...</div> <div class="tabs clearboth">...</div>
Офлайн
chuffey
Этот div пустой при загрузке страницы.
Потом в него подгружается расписание, например, через ajax.
Вам нужно парсить уже после подгрузки данных расписания.
Офлайн
Попробуйте в качестве транспорта для Grab использовать selenium.
Или, если вам нужен только этот кусочек страницы - расписание,- найдите ajax-запрос на странице и шлите прямые запросы по используемому ajax-запросом адресу.
Офлайн
Не могу воспользоваться GrabSelenium, на вики написано пользоваться так
from grab import GrabSelenium g = GrabSelenium() g.go('http://ixbt.com') print g.xpath_text('//title')
from grab.transport.selenium import GrabSelenium g = GrabSelenium() g.go('http://kinomax.ru/kirov/')
C:\Python27\python.exe C:/Python27/Lib/site-packages/grab-0.4.8-py2.7.egg/grab/transport/selenium.py Traceback (most recent call last): File "C:/Python27/Lib/site-packages/grab-0.4.8-py2.7.egg/grab/transport/selenium.py", line 7, in <module> import urllib File "C:\Python27\Lib\site-packages\grab-0.4.8-py2.7.egg\grab\transport\urllib.py", line 9, in <module> import urllib2 File "C:\Python27\lib\urllib2.py", line 112, in <module> from urllib import (unwrap, unquote, splittype, splithost, quote, ImportError: cannot import name unwrap Process finished with exit code 1
Отредактировано chuffey (Апрель 24, 2013 14:06:34)
Офлайн
Офлайн
plusplusогромное спасибо, а еще всеравно расскажите как найти подобное на странице?
http://kinomax.ru/index2.php?r=schedule%2Fcinema&id=kirov
Отредактировано chuffey (Апрель 24, 2013 18:20:46)
Офлайн
chuffey
Снифером. Я пользовался плагином httpfox для firefox, просто просмотрел все запросы и нашел нужный. Вроде и в firebug-е чето подобное есть.
Офлайн
В хроме есть встроенный сниффер: заходим на нужную страницу, далее жмём Ctrl + J, далее переходим на вкладку network, далее перезагружаем страницу и видим все сделанные браузером сетевые запросы.
Честно говоря, я не знаю, насколько хорошо работает Grab-транспорт для selenium. Вот этот человек пилит потихоньку транспорт для selenium https://bitbucket.org/Deadly0 - вопросы к нему лучше адресовать по этому транспорту.
Офлайн