Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Web
  • » Парсер с DOM последовательностью запросов [RSS Feed]

#1 Дек. 10, 2012 10:56:49

Doberman26rus
От: Ставрополь
Зарегистрирован: 2009-03-16
Сообщения: 128
Репутация: +  1  -
Профиль   Отправить e-mail  

Парсер с DOM последовательностью запросов

ну так в чем проблема??

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 (Дек. 10, 2012 10:57:08)

Офлайн

#2 Дек. 10, 2012 11:03:15

Doberman26rus
От: Ставрополь
Зарегистрирован: 2009-03-16
Сообщения: 128
Репутация: +  1  -
Профиль   Отправить e-mail  

Парсер с DOM последовательностью запросов

после того, как получил данные делаешь примерно так

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 выбранных станций (первый столбец предыдущего запроса)



подпись

Отредактировано Doberman26rus (Дек. 10, 2012 11:03:47)

Офлайн

#3 Дек. 11, 2012 16:51:56

folt
Зарегистрирован: 2012-12-04
Сообщения: 16
Репутация: +  0  -
Профиль   Отправить e-mail  

Парсер с DOM последовательностью запросов

у меня приходят ироглифы
может неправильно натроил кодировки или еще чего, может предметно кто поможет?

Офлайн

#4 Дек. 14, 2012 15:39:22

lorien
От:
Зарегистрирован: 2006-08-20
Сообщения: 755
Репутация: +  37  -
Профиль  

Парсер с DOM последовательностью запросов

Какие иероглифы? Давайте конкретный код (минимальный рабочий код с импортами, чтобы можно было сразу запустить, который показывает проблему) - будет предметный разговор, а так, откуда нам знать, что у вас там делается в программе.

Офлайн

#5 Дек. 17, 2012 23:00:19

folt
Зарегистрирован: 2012-12-04
Сообщения: 16
Репутация: +  0  -
Профиль   Отправить e-mail  

Парсер с DOM последовательностью запросов

#!/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('|')
Вот то, что пока есть.

Или я накосячил, или запутался… но данных приходит очень много и они не читабельные. В чем проблема?

Офлайн

#6 Дек. 18, 2012 05:17:04

folt
Зарегистрирован: 2012-12-04
Сообщения: 16
Репутация: +  0  -
Профиль   Отправить e-mail  

Парсер с DOM последовательностью запросов

Понял в чем проблема. Я не могу инициолизировать рабочию среду. Оно ищет не с премого

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-уты и таблицы каторые прилетают. Вот пока главный вопрос к Вам, как инициолизировать среду для дальнейшего поиска?

Офлайн

#7 Дек. 18, 2012 11:12:25

lorien
От:
Зарегистрирован: 2006-08-20
Сообщения: 755
Репутация: +  37  -
Профиль  

Парсер с DOM последовательностью запросов

Я вообще не понимаю, что вы написали в предыдущем сообщении. Что такое “инициолизировать рабочию среду”?
Код тоже вы непонятный указали. Зачем там объявлен словарь `post`, если вы его не используете? Может быть, что-то забыли в коде указать?

Офлайн

#8 Дек. 18, 2012 11:29:04

folt
Зарегистрирован: 2012-12-04
Сообщения: 16
Репутация: +  0  -
Профиль   Отправить e-mail  

Парсер с DOM последовательностью запросов

я пытался в начале просто получить и сохранить главную страницу как было в тутариале на хабрахабе об грапе. оказалась, что сохраненая страница

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 умеет это делать. может с помощью ее, может еще есть варианты?

Офлайн

  • Начало
  • » Web
  • » Парсер с DOM последовательностью запросов[RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version