Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 29, 2012 06:49:42

Seganapa
От: Новороссийск
Зарегистрирован: 2012-07-31
Сообщения: 139
Репутация: +  0  -
Профиль   Отправить e-mail  

Эмуляция браузера PyQT4

Делаю так:

#!/usr/bin/python
import spynner
import time
from PyQt4 import QtWebKit
settings = QtWebKit.QWebSettings.globalSettings()
settings.setAttribute(QtWebKit.QWebSettings.PluginsEnabled, True)
 
class ClickableBrowser(spynner.Browser):
    def __init__(self, *args, **kwargs):
        super(ClickableBrowser, self).__init__(*args, **kwargs)
        self.webpage.setLinkDelegationPolicy(QtWebKit.QWebPage.DelegateAllLinks)
        self.webpage.linkClicked.connect(self._link_is_clicked)
 
    def _link_is_clicked(self, url):
        self.load(url)
  
browser = ClickableBrowser(debug_level=spynner.INFO)
browser.create_webview()
browser.show()
browser.load("http://ru.grepolis.com")
browser.load_jquery(True)
browser.browse()

Потом ввожу руками логин и пароль, но Flash все равно не догружается…


Так и висит… Что не так?



—————————————————————–
Изучаю и параллельно использую Python 2.7

Отредактировано Seganapa (Окт. 29, 2012 06:50:02)

Офлайн

#2 Окт. 30, 2012 07:42:32

Seganapa
От: Новороссийск
Зарегистрирован: 2012-07-31
Сообщения: 139
Репутация: +  0  -
Профиль   Отправить e-mail  

Эмуляция браузера PyQT4

Пробовал даже NPSWF32.dll копировать в директорию с программкой, толку нет… Так и не работает!

Help ME please!!!



—————————————————————–
Изучаю и параллельно использую Python 2.7

Офлайн

#3 Окт. 30, 2012 08:04:52

reclosedev
От: Н.Новгород
Зарегистрирован: 2012-03-29
Сообщения: 870
Репутация: +  173  -
Профиль   Отправить e-mail  

Эмуляция браузера PyQT4

Так флэш не работает или просто не логинится? Нужно проверить на youtube.com. У меня работало. Если не работает флэш вообще, нужно пробовать установить плагин в систему еще раз (разные варианты для сафари, хром). Если флэш работает, то смотреть по логам что не так.
На grepolis нет возможности проверить.

Офлайн

#4 Окт. 30, 2012 08:28:30

Seganapa
От: Новороссийск
Зарегистрирован: 2012-07-31
Сообщения: 139
Репутация: +  0  -
Профиль   Отправить e-mail  

Эмуляция браузера PyQT4

Он авторизуется нормально, в углу видно название города.
Может я что не так делаю…

А если я тестовый логин и пароль дам, можете проверить, очень нужно…
Логин: Sudorei
Пароль: 26102012



—————————————————————–
Изучаю и параллельно использую Python 2.7

Офлайн

#5 Окт. 30, 2012 08:47:44

reclosedev
От: Н.Новгород
Зарегистрирован: 2012-03-29
Сообщения: 870
Репутация: +  173  -
Профиль   Отправить e-mail  

Эмуляция браузера PyQT4

Попробовал, тоже дальше картинки с полоской не идет. Чтобы разобраться, советую поставить прокси (Fiddler например) и смотреть, что там не так.

Код, чтобы пустить Spynner через прокси:

from PyQt4 import QtNetwork
proxy = QtNetwork.QNetworkProxy(QtNetwork.QNetworkProxy.HttpProxy, "127.0.0.1", 8080)
QtNetwork.QNetworkProxy.setApplicationProxy(proxy)
Удачи.

Офлайн

#6 Окт. 30, 2012 09:38:06

Seganapa
От: Новороссийск
Зарегистрирован: 2012-07-31
Сообщения: 139
Репутация: +  0  -
Профиль   Отправить e-mail  

Эмуляция браузера PyQT4

C fiddler даже логин и пароль не дает ввести, окошко закрывается не догрузившись…
Ошибка spynner.browser.SpynnerTimeout: Timeout reached: 10 seconds



—————————————————————–
Изучаю и параллельно использую Python 2.7

Офлайн

#7 Окт. 30, 2012 10:26:38

reclosedev
От: Н.Новгород
Зарегистрирован: 2012-03-29
Сообщения: 870
Репутация: +  173  -
Профиль   Отправить e-mail  

Эмуляция браузера PyQT4

Порт может другой, не помню какой в Fiddler.

Офлайн

#8 Окт. 30, 2012 11:05:18

Seganapa
От: Новороссийск
Зарегистрирован: 2012-07-31
Сообщения: 139
Репутация: +  0  -
Профиль   Отправить e-mail  

Эмуляция браузера PyQT4

Да нет, он видит запросы, порт 8888
Но после загрузки страницы (в которой поля для ввода пароля и логина) окошко Pyqt закрывается и я ничего не могу сделать… Короче я в растерянности… Сам бот давно написал, застрял на создании интерфейса…



—————————————————————–
Изучаю и параллельно использую Python 2.7

Офлайн

#9 Окт. 30, 2012 13:58:11

Seganapa
От: Новороссийск
Зарегистрирован: 2012-07-31
Сообщения: 139
Репутация: +  0  -
Профиль   Отправить e-mail  

Эмуляция браузера PyQT4

Ув. reclosedev - Я проверил с youtube. Все работает, ролики проигрывает, значит проблема не в Flash?
А в чем может быть? Куки?



—————————————————————–
Изучаю и параллельно использую Python 2.7

Офлайн

#10 Окт. 31, 2012 14:01:40

Seganapa
От: Новороссийск
Зарегистрирован: 2012-07-31
Сообщения: 139
Репутация: +  0  -
Профиль   Отправить e-mail  

Эмуляция браузера PyQT4

В общем для проверки использовал такой код:

import sys
from PyQt4 import QtWebKit
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from PyQt4.QtWebKit import *
from PyQt4.QtNetwork import *
settings = QtWebKit.QWebSettings.globalSettings()
settings.setAttribute(QtWebKit.QWebSettings.JavascriptEnabled, True);
settings.setAttribute(QtWebKit.QWebSettings.PluginsEnabled, True)
QNetworkProxy.setApplicationProxy(QNetworkProxy(QNetworkProxy.HttpProxy, "127.0.0.1", 8888))
app = QApplication(sys.argv)
web = QWebView()
web.load(QUrl("http://ru.grepolis.com"))
web.show()
sys.exit(app.exec_())

Fiddler показал что в моей программке на определенном этапе не отправляет GET запрос

Вот где останавливается браузер Python:


А вот как срабатывает Firefox:


В красной рамке тот запрос который не отправляет Python…

Как такое может быть? И есть ли способ решить эту проблему? Замучился уже… (((




—————————————————————–
Изучаю и параллельно использую Python 2.7

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version