Найти - Пользователи
Полная версия: Selenium + Grab
Начало » Web » Selenium + Grab
1 2 3
Seganapa
Значит именно движок Firefox встроить не получится? Очень жаль… Кто-нибудь вообще писал полноценного бота для online игр на Python? Может есть какой-то другой способ реализовать этот момент?
odnochlen
Держи на питоне

Гугл
Seganapa
Это немного не то… Вы меня не поняли! Сам бот я уже написал… Теперь мне нужно создать для него интерфейс…
Seganapa
Возможно мне бы подошел Spynner http://packages.python.org/spynner/
Но что-то не могу разобрать

Например
from spynner import browser  
url = 'http://google.com'
br = browser.Browser()  
br.create_webview()  
br.show()  
br.load(url) 

Открывается на несколько секунд окошко и потом исчезает
Сообщение: QWaitCondition: Destroyed while threads are still waiting

Как в Spynner сделать так, чтобы окно оставалось и можно было продолжать серфинг?

Griffon
На днях тоже столкнулся с проблемой. Граб упорно не проходит авторизацию на одном сайте. Грешил на то что не удаляются куки срок которых истёк (есть пара таких на сайте), сделал удаление - не прошло. Причем сам сайт со страницы авторизации редиректит сразу на главную (мол авторизация прошла), а главная редиректит на страницу авторизации (мол фиг тебе).
Селениум конечно же работает в таком случае без вопросов (браузер же).
Но мне в отличии от топикстартера, наоборот не надо выводить процесс действий, да и логика уже под Граб написана.
Было бы неплохо если бы можно было передать из Селениума в Граб все параметры, чтобы сайт при этом ничего не заподозрил. Простая передача куки не работает.

Спасибо за линк на Спайнер, попробую его ещё.
Seganapa
Блин, я уже кучу модулей перепробовал, но то что мне нужно так и не реализовал… Одна надежда на Spynner осталась. Щас упорно его ковыряю…
odnochlen
Griffon
Граб упорно не проходит авторизацию на одном сайте.
А можно код или лог запросов? Сколько слышал про глючный граб, но ни разу не видел примеров.
Seganapa
Ну не знаю…
Уже несколько маленьких проектов на Grab писал, ни разу меня не подводил… Отрабатывает все как нужно. Может пока везет!
Griffon
Я не говорил что Граб глючный, а сказал что он упорно не хочет. Вполне возможно он не хочет потому, что я делаю что-то не так.

Код без проверок и прочего:
g = Grab(log_dir='log', follow_refresh=True)
g.go(''http://aukro.ua/myaccount/')
g.set_input('user_login', login)
g.set_input('user_password', password)
g.submit()

Собственно лог:
http://fileshare.in.ua/6823914

Из интересных фактов. На сайте две разных формы авторизации. Меняются они как-то по времени. С одной формой, авторизация проходит, а со второй нет.
odnochlen
Griffon, я никогда set_input не юзал, вместо этого напрямую создавал запрос. В таком виде проблем не было.
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