Форум сайта python.su
помогите плз, есть код..
from PyQt4 import QtWebKit, QtCore, QtGui, QtNetwork
class Webber(QtGui.QMainWindow):
def __init__(self):
QtGui.QMainWindow.__init__(self)
self.resize(800,600)
self.cj = QtNetwork.QNetworkCookieJar(self)
quit = QtGui.QPushButton('Cookies', self)
quit.setGeometry(10, 10, 60, 35)
self.connect(quit, QtCore.SIGNAL('clicked()'),self.printer)
self.view = QtWebKit.QWebView(self)
self.view.setGeometry(100, 200, 500, 300)
self.view.load(QtCore.QUrl('http://python.su/'))
self.view.show()
def printer(self):
print self.view.allCookies()
app = QtGui.QApplication(sys.argv)
main = Webber()
main.show()
sys.exit(app.exec_())
Офлайн
эээ.. а че ее в GUI кинули? мож лучше в WEB?
Офлайн
чего оно пишет, что кукисов нет?Не внимательно читаешь. Он пишет AttributeError и это говорит о том, что у объекта QWebView нет метода allCookies
def printer(self):
page = self.view.page()
manager = page.networkAccessManager()
cookie_jar = manager.cookieJar()
current_url = self.view.url()
print u"Current url -- %s" % unicode(current_url.toString())
for cookie in cookie_jar.cookiesForUrl(current_url):
print u"%s:%s (%s) => %s" % \
(unicode(cookie.name()),
unicode(cookie.path()),
unicode(cookie.domain()),
unicode(cookie.value()))
Отредактировано (Ноя. 8, 2008 20:45:45)
Офлайн
пасибо.. я просто тогда ночью это писал и моск нормально отказывался работать(
а чего так не работает:
from PyQt4 import QtWebKit, QtCore, QtGui, QtNetwork
import sys
class Webber(QtGui.QMainWindow):
def __init__(self):
QtGui.QMainWindow.__init__(self)
self.resize(800,600)
quit = QtGui.QPushButton('Cookies', self)
quit.setGeometry(10, 10, 60, 35)
self.connect(quit, QtCore.SIGNAL('clicked()'),self.printer)
self.view = QtWebKit.QWebView(self)
self.view.setGeometry(100, 200, 500, 300)
self.view.load(QtCore.QUrl('http://python.su/forum'))
self.view.show()
def printer(self):
page = self.view.page()
manager = page.networkAccessManager()
cookie_jar = manager.cookieJar()
print cookie_jar.allCookies()
app = QtGui.QApplication(sys.argv)
main = Webber()
main.show()
sys.exit(app.exec_())
Офлайн
124bitЧитай внимательно сообщение исключения, там всё написано.
пасибо.. я просто тогда ночью это писал и моск нормально отказывался работать(
а чего так не работает
Офлайн
я его читаю, и перевожу… но я не понимаю, почему((( лана, не важно.. эт я так, для интереса спросил)
Офлайн
блин, ну а чего понимать, там прямым текстом сказано, что allCookies – приватный метод и для объектов, созданных не из Питона, в Питоне не доступен. cookie jar создан не тобой через Питон, а опосредованно. Вот если ты создашь свой cookie jar и сопоставишь его QWebPage, то в этом случае сможешь получать все куки, а не только относящиеся к текущему урлу.
В общем, заряжай мозги © Nuts
Офлайн
ааа.. пасибо) терь все ясно! *пошел ставит моск на зарядку*
Офлайн