文档章节

windows下用QTwebkit解析html

AllenOR灵感
 AllenOR灵感
发布于 2017/09/10 00:48
字数 324
阅读 19
收藏 0

环境

windows7 + VS2010 + QT5.2_opengl

配置开发环境

1、安装VS2010

2、安装QT 5.2

QT网站:http://qt-project.org/downloads

下载并安装QT5.2:Qt 5.2.1 for Windows 32-bit (VS 2010, OpenGL, 517 MB)

3、安装Visual Studio Add-in for QT5

下载地址:Visual Studio Add-in 1.2.2 for Qt5

4、配置VS 2010

配置路径:QT5 ==> "Qt Options" ==> "Qt Versions" ==> Add

默认路径为:C:\Qt\Qt5.2.0\5.2.0\msvc2010_opengl

解析html

1、建立QtWebkit工程

操作路径:VS2010 ==> File ==> New ==> Project ==> "Qt5 Projects" ==> "Qt Application"

注意事项

在"Project Settings"里面选中“WebKit”和“Webkit Widgets”选项: 

2、添加头文件

#include <QtGui>
#include <QtWebKit>
#include <QWebView>

3、解析内容

3.1、解析http形式的url

使用QWebView的setUrl方法,示例如下:

QWebView view;
view.show();
view.setUrl(QUrl("http://www.cnblogs.com/mikezhang"));

3.2、解析本地文件

使用QWebView的setUrl方法,示例如下:

QWebView view;
view.show();
view.setUrl(QUrl("file:///E:/tmp/1.html"));

3.3、解析html字符串

使用QWebView的setHtml方法,示例如下:

QApplication app(argc, argv);
QWebView view;
view.show();
std::ifstream fin("E:/tmp/1.html");  
std::stringstream buffer;  
buffer << fin.rdbuf();  
fin.close();
view.setHtml(buffer.str().c_str());

完整代码如下

#include <QtGui>
#include <QtWebKit>
#include <QWebView>

#include <fstream>
#include <string>
#include <sstream> 

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    QWebView view;
    view.show();

    // Method 1 : a remote url
    //view.setUrl(QUrl("http://www.cnblogs.com/mikezhang"));

    // Method 2 : a local url
    //view.setUrl(QUrl("file:///E:/tmp/1.html"));   

    // Method 3 : set html content  
    std::ifstream fin("E:/tmp/1.html");  
    std::stringstream buffer;  
    buffer << fin.rdbuf();  
    fin.close();
    view.setHtml(buffer.str().c_str());

    return app.exec();
}
View Code

 

本文转载自:http://www.cnblogs.com/MikeZhang/p/QtWebkitParseHtml_20140206.html

AllenOR灵感
粉丝 11
博文 2635
码字总数 83001
作品 0
程序员
私信 提问
QtWebKit 2.2 正式版 和 Qt Creator 2.3.1发布

Qt官方发布了QtWebKit 2.2正式版的桌面版本和移动版本。 QtWebkit基于开源的WebKit引擎,提供了一个在Qt中使用web浏览器引擎的功能,它包含一个C++ API,允许在Qt应用程序中嵌入网页内容,并...

小编辑
2011/10/02
2.9K
2
Qt 与 JavaScript 交互 (一)

Qt是如何与JavaScript交互的呢?Qt是通过Qtwebkit 与JavaScript 交互,然后Qtwebkit 又是Qt的什么模块呢? Qtwebkit是基于开源的WebKit engine。http://www.webkit.org是开源webkit官方网站。...

寒竺
2013/08/14
2.3K
0
基于PyQt5的快速开发框架QFramer

QFramer 是基于PyQt5的一款快速开发框架 1. 基于Qt/ PyQt /PySide开发GUI常用的开发方式 + QWidget + qss+ QtWebkit + html + css + js+ Qt Quick这三种技术都可以高效、快速、完美的开发出你...

ding465398889
2014/05/25
5.3K
1
惠普继续开源JavaScriptCore和Enyo UI widget

近日,惠普继续按照之前公布的webOS开源路线图前进,Enyo2.0的部分UI组件开始公布,还有javascript核心代码,以及webOS上全新的的QtWebKit浏览器代码。 javascript core目前还不完整,我们之...

红薯
2012/02/17
1K
3
Qt 5发布

Digia,Qt新的所有者,宣布了Qt框架第五版的发布。“Qt 5关键改进方面:图像质量;有限硬件下的性能提升;跨平台可移植性;对C++ 11的支持;QtWebKit 2对HTML5的劫持;大幅改进、新增API的Q...

xyxzfj
2012/12/20
26
0

没有更多内容

加载失败,请刷新页面

加载更多

Spring Boot + Mybatis-Plus 集成与使用(二)

前言: 本章节介绍MyBatis-Puls的CRUD使用。在开始之前,先简单讲解下上章节关于Spring Boot是如何自动配置MyBatis-Plus。 一、自动配置 当Spring Boot应用从主方法main()启动后,首先加载S...

伴学编程
昨天
7
0
用最通俗的方法讲spring [一] ──── AOP

@[TOC](用最通俗的方法讲spring [一] ──── AOP) 写这个系列的目的(可以跳过不看) 自己写这个系列的目的,是因为自己是个比较笨的人,我曾一度怀疑自己的智商不适合干编程这个行业.因为在我...

小贼贼子
昨天
7
0
Flutter系列之在 macOS 上安装和配置 Flutter 开发环境

本文为Flutter开发环境在macOS下安装全过程: 一、系统配置要求 想要安装并运行 Flutter,你的开发环境需要最低满足以下要求: 操作系统:macOS(64位) 磁盘空间:700 MB(不包含 IDE 或其余...

過愙
昨天
6
0
OSChina 周六乱弹 —— 早上儿子问我他是怎么来的

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @凉小生 :#今日歌曲推荐# 少点戾气,愿你和这个世界温柔以待。中岛美嘉的单曲《僕が死のうと思ったのは (曾经我也想过一了百了)》 《僕が死の...

小小编辑
昨天
2.7K
16
Excption与Error包结构,OOM 你遇到过哪些情况,SOF 你遇到过哪些情况

Throwable 是 Java 中所有错误与异常的超类,Throwable 包含两个子类,Error 与 Exception 。用于指示发生了异常情况。 Java 抛出的 Throwable 可以分成三种类型。 被检查异常(checked Exc...

Garphy
昨天
42
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部