Qt笔记-QWebView完整加载页面及获取cookie
生活随笔
收集整理的這篇文章主要介紹了
Qt笔记-QWebView完整加载页面及获取cookie
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
目錄
?
?
基本概念
代碼與實例
?
基本概念
在使用QWebView的時候,有些情況下,網頁是獲取不完善的,在此要設置下QWebView的setting
ui.webView->setUrl(QUrl("https://passport.csdn.net/login?code=public"));QWebSettings *settings = ui.webView->settings();settings->setAttribute(QWebSettings::LocalStorageEnabled, true);下面是獲取Cookie:
QList<QNetworkCookie> list = ui.webView->page()->networkAccessManager()->cookieJar()->cookiesForUrl(QUrl("https://www.csdn.net/"));for(int i = 0; i < list.size(); i++){qDebug() << list[i].name() << "\t" << list[i].value();}?
代碼與實例
程序運行截圖如下:
源碼如下:
loginweb.h
#ifndef LOGINWEB_H #define LOGINWEB_H#include <QtWidgets/QWidget> #include "ui_loginweb.h"class LoginWeb : public QWidget {Q_OBJECTpublic:LoginWeb(QWidget *parent = 0);~LoginWeb();protected:void timerEvent(QTimerEvent *event);private:Ui::LoginWebClass ui; };#endif // LOGINWEB_Hloginweb.cpp
#include "loginweb.h" #include <QWebView> #include <QWebSettings> #include <QTimerEvent> #include <QNetworkCookie> #include <QNetworkCookieJar> #include <QDebug> #include <QUrl>LoginWeb::LoginWeb(QWidget *parent): QWidget(parent) {ui.setupUi(this);ui.webView->setUrl(QUrl("https://passport.csdn.net/login?code=public"));QWebSettings *settings = ui.webView->settings();settings->setAttribute(QWebSettings::LocalStorageEnabled, true);startTimer(1000); }LoginWeb::~LoginWeb() {}void LoginWeb::timerEvent(QTimerEvent *event) {QList<QNetworkCookie> list = ui.webView->page()->networkAccessManager()->cookieJar()->cookiesForUrl(QUrl("https://www.csdn.net/"));for(int i = 0; i < list.size(); i++){qDebug() << list[i].name() << "\t" << list[i].value();}qDebug() << QString::fromLocal8Bit("--------- 華 麗 的 分 割 線 ---------"); }main.cpp
#include "loginweb.h" #include <QtWidgets/QApplication>int main(int argc, char *argv[]) {QApplication a(argc, argv);LoginWeb w;w.show();return a.exec(); }?
源碼下載地址:
https://github.com/fengfanchen/Qt/tree/master/QWebViewPageAndCookie
?
總結
以上是生活随笔為你收集整理的Qt笔记-QWebView完整加载页面及获取cookie的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python笔记-函数装饰器
- 下一篇: 系统架构工作笔记-数据展示进程与读取数据