Найти - Пользователи
Полная версия: Парсер с DOM последовательностью запросов
Начало » Web » Парсер с DOM последовательностью запросов
1 2
Doberman26rus
ну так в чем проблема??
g = Grab()
g.go('http://ivctrans.by/all/getdata.php?PHPSESSID=53cfe35b65dbb17e9160c8c6dd298b60&prog=station1&host=1&q=%D1%81%D1%82%D0%B0%D0%B2&limit=20&timestamp=1355129442596')
for item in g.tree.xpath('//text()'): print item.split('|')
Данные у тебя есть, что еще тебе нужно?
Doberman26rus
после того, как получил данные делаешь примерно так
post = { 'station_id':'210022', 'station_id1':'767037', 'date':'10.12.2012', 'online':'', 'path':'0' }
g = Grab()
g.setup(post=post)
g.go('http://ivctrans.by/all/getdata.php?PHPSESSID=53cfe35b65dbb17e9160c8c6dd298b60&prog=marshrut1&host=1')
'station_id' и ‘station_id1’ id выбранных станций (первый столбец предыдущего запроса)
folt
у меня приходят ироглифы
может неправильно натроил кодировки или еще чего, может предметно кто поможет?
lorien
Какие иероглифы? Давайте конкретный код (минимальный рабочий код с импортами, чтобы можно было сразу запустить, который показывает проблему) - будет предметный разговор, а так, откуда нам знать, что у вас там делается в программе.
folt
#!/usr/bin/env python
# -*- coding: utf-8 -*-
    
from grab import Grab
g = Grab()
g.go('http://ivctrans.by/all/first.php')
post = {'station_id':'210022', 'station_id1':'767037' , 'date':'10.12.2012', 'online':'', 'path':'0'}
for item in g.tree.xpath('//text()'): print item.split('|')
Вот то, что пока есть.

Или я накосячил, или запутался… но данных приходит очень много и они не читабельные. В чем проблема?
folt
Понял в чем проблема. Я не могу инициолизировать рабочию среду. Оно ищет не с премого
http://ivctrans.by/all/first.php
а только после GET запросов такого вида:
http://ivctrans.by/all/first.php
http://ivctrans.by/all/media/jquery.min.js
http://ivctrans.by/all/media/validation.js
http://ivctrans.by/all/media/jquery.autocomplete.min.js
http://ivctrans.by/all/getdata.php?PHPSESSID=a407688d17f559c65ce4f7e4a9bda1e3&prog=getdate

далее снифером вполне легко отлавливаються input-уты и таблицы каторые прилетают. Вот пока главный вопрос к Вам, как инициолизировать среду для дальнейшего поиска?
lorien
Я вообще не понимаю, что вы написали в предыдущем сообщении. Что такое “инициолизировать рабочию среду”?
Код тоже вы непонятный указали. Зачем там объявлен словарь `post`, если вы его не используете? Может быть, что-то забыли в коде указать?
folt
я пытался в начале просто получить и сохранить главную страницу как было в тутариале на хабрахабе об грапе. оказалась, что сохраненая страница
http://ivctrans.by/all/first.php
предстовляет собой просто оболочку загрузки для формы поиска.

http://ivctrans.by/all/media/jquery.min.js - включает библиотеку qj для доступа по элементкам к данным
http://ivctrans.by/all/media/validation.js - это загрузка аякс формы поиска
http://ivctrans.by/all/media/jquery.autocomplete.min.js - загрузка автозаполнения форм (вылетающие подсказки)
http://ivctrans.by/all/getdata.php?PHPSESSID=a407688d17f559c65ce4f7e4a9bda1e3&prog=getdate -загрузка дат поиска

из этого сделал вывод, что мне для моего парсера потребуеться програмно все это сделать.

тут вопрос - как?? грап может работать с аяксам?
в тех документации ничего про это не нашел, хотя отрыл что requests умеет это делать. может с помощью ее, может еще есть варианты?
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB