环境

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();
}

本文github地址:

https://github.com/mike-zhang/mikeBlogEssays/blob/master/2014/20140205_windows下用QTwebkit解析html.md

欢迎补充

windows下用QTwebkit解析html的更多相关文章

  1. windows下使用xerces -c解析XML

    windows下使用Xerces-C++解析XML 前景提要 最近工作中遇到收到的数据为xml格式的情况,考虑到xml解析应该是个很常用的功能,应该有开源的lib库可以使用,于是就在网上找了找,果然发 ...

  2. Smarty模板Windows下写代码 放到CentOS6.5无法正确解析

    如题:报错: Unable to load template file 'System/header.htm' in '/var/www/website/cms/Template/Default/We ...

  3. 解析 Qt 程序在Windows 下发布

    原文请看:http://www.cnblogs.com/elect-fans/archive/2012/03/15/2408579.html Qt 程序在Windows下发布是本文要介绍的内容,不多说 ...

  4. Linux的.a、.so和.o文件 windows下obj,lib,dll,exe的关系 动态库内存管理 动态链接库搜索顺序 符号解析和绑定 strlen函数的汇编实现分析

    Linux的.a..so和.o文件 - chlele0105的专栏 - CSDN博客 https://blog.csdn.net/chlele0105/article/details/23691147 ...

  5. Windows下解析命令行参数

    linux通常使用GNU C提供的函数getopt.getopt_long.getopt_long_only函数来解析命令行参数. 移植到Windows下 getopt.h #ifndef _GETO ...

  6. Windows下node-gyp查找VS安装路径简单解析

    node-gyp的作用我已经不想赘述了,这里给一个我之前文章的链接:cnblogs看这里,知乎看这里.本文主要从源码入手,介绍node-gyp查找VisualStudio的过程 为了方便我们研究nod ...

  7. Cts框架解析(1)-windows下cts配置

    环境搭建 下载 cts工具的下载地址:http://source.android.com/compatibility/downloads.html windows选择Android4.4 R3 Com ...

  8. Windows下Visual studio 2013 编译 Audacity

    编译的Audacity版本为2.1.2,由于实在windows下编译,其源代码可以从Github上取得 git clone https://github.com/audacity/audacity. ...

  9. Windows下Nginx配置SSL实现Https访问(包含证书生成)

    Vincent.李   Windows下Nginx配置SSL实现Https访问(包含证书生成) Windows下Nginx配置SSL实现Https访问(包含证书生成) 首先要说明为什么要实现https ...

随机推荐

  1. ASP.NET MVC中使用Unity Ioc Container

    写在前面 安装Unity 添加服务层 IArticleRepository类型映射 服务注入到控制器 Global.asax初始化 后记 关于Unity的使用可以参照<Unity依赖注入使用详解 ...

  2. Lua 学习笔记(五)函数

    函数的定义:在Lua中,函数是一种对语句和表达式进行抽象的主要机制. 一.函数基本用法        在Lua中,      1.函数既可以完成某项特定的任务.(被视为一条语句)      2.也可以 ...

  3. Java:IDEA下使用JUNIT

    JUnit单元测试--IntelliJ IDEA (本文转载自华行天下) 单元测试的基本使用 一.环境配置 使用idea IDE 进行单元测试,首先需要安装JUnit 插件. 1.安装JUnit插件步 ...

  4. 重温JSP学习笔记--JSTL标签库

    以前写jsp的时候对jstl标签库是有些抵触的,因为我觉得嵌入java代码的方式几乎无往不利,没有必要使用标签库,不过这次复习还是好好地学习了一下,发现这个还是很有用处的,用得好能省不少事,JSTL是 ...

  5. VS 2010一步步开发windows服务(windows service)

    基于0起步来创建一个服务,做到简单的记录时间日志功能,其具体招行方法可自行添加. 1.创建服务 2.删除默认服务文件 3.添加自己的服务文件 4.更改启动项目 5. 引用 using System.T ...

  6. 小白Linux入门 三

    环境变量 shell 变量: 内存空间 ,命名的内存空间 echo $SHELL 其中SHELL是变量 里面是/bin/bash sudo su  进入root printenv 命令 命令: 内部命 ...

  7. 7.10 数据注解特性--NotMapped

    NotMapped特性可以应用到领域类的属性中,Code-First默认的约定,是为所有带有get,和set属性选择器的属性创建数据列.. NotManpped特性打破了这个约定,你可以使用NotMa ...

  8. C#基础知识五之abstract virtual关键字

    abstract 用关键字abstract修饰的类叫做抽象类,且只能作为基类,也不能实例化. 用abstract定义的抽象类中不一定只包含抽象方法 ,可以包含非抽象方法. abstract定义的方法一 ...

  9. C#代码精确到毫秒时间戳写法

                 TimeSpan ts = new TimeSpan(DateTime.Now.Ticks);            ts.TotalMilliseconds;  

  10. DES加密中文乱码问题的解决

    服务器向客户端返回时: response.setContentType("text/json; charset=utf-8"); 客户端解码时: return new String ...