在 Qt 中解析 HTML 的最佳方法?

2024-03-23

在 Qt 中,我将如何解析充满 BAD html 的页面上的所有“a”html 标签“href”属性?


我会使用内置的 QtWebKit。不知道它的性能如何,但我认为它应该捕获所有“坏”HTML。 就像是:

class MyPageLoader : public QObject
{
  Q_OBJECT

public:
  MyPageLoader();
  void loadPage(const QUrl&);

public slots:
  void replyFinished(bool);

private:
  QWebView* m_view;
};

MyPageLoader::MyPageLoader()
{
  m_view = new QWebView();

  connect(m_view, SIGNAL(loadFinished(bool)),
          this, SLOT(replyFinished(bool)));
}

void MyPageLoader::loadPage(const QUrl& url)
{
  m_view->load(url);
}

void MyPageLoader::replyFinished(bool ok)
{
  QWebElementCollection elements = m_view->page()->mainFrame()->findAllElements("a");

  foreach (QWebElement e, elements) {
    // Process element e
  }
}

使用该类

MyPageLoader loader;
loader.loadPage("http://www.example.com")

然后对集合做任何你喜欢的事情。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Qt 中解析 HTML 的最佳方法? 的相关文章

  • 类特定的新删除运算符是否必须声明为静态

    标准中是否要求类特定的 new new delete 和 delete 是静态的 我可以让它们成为非静态成员运算符吗 为什么需要它们是静态的 它们被隐式声明为静态 即使您没有键入 static
  • 与 Qt 项目的静态链接

    我有一个在 Visual Studio 2010 Professional 中构建的 Qt 项目 但是 当我运行它 在调试或发布模式下 时 它会要求一些 Qt dll 如果我提供 dll 并将它们放入 System32 中 它就可以工作 但
  • 为什么这个没有特殊字符的正则表达式会匹配更长的字符串?

    我正在使用此方法来尝试查找匹配项 例如 Regex Match A2 TS OIL TS OIL RegexOptions IgnoreCase Success 我得到了真实的结果 我很困惑 我认为这应该返回 false 因为模式中没有特殊
  • 找不到 assimp-vc140-mt.dll ASSIMP

    我已经从以下位置下载了 Assimp 项目http assimp sourceforge net main downloads html http assimp sourceforge net main downloads html Ass
  • ASP.Net Core 内容配置附件/内联

    我正在从 WebAPI 控制器返回一个文件 Content Disposition 标头值自动设置为 附件 例如 处置 附件 文件名 30956 pdf 文件名 UTF 8 30956 pdf 当它设置为附件时 浏览器将要求保存文件而不是打
  • 如何将 HTML 链接放入电子邮件正文中?

    我有一个可以发送邮件的应用程序 用 Java 实现 我想在邮件中放置一个 HTML 链接 但该链接显示为普通字母 而不是 HTML 链接 我怎样才能将 HTML 链接放入字符串中 我需要特殊字符吗 太感谢了 Update 大家好你们好 感谢
  • 在 JSQMessagesViewController 中显示 LocationMediaItem

    我刚刚尝试实施LocationMediaItem in my Xamarin iOS应用程序使用JSQMessagesViewController 一切都很顺利 唯一的问题是UICollectionView应该显示位置的单元格永远停留在加载
  • C++ php 和静态库

    我创建了一个library a 其中包含 cpp 和 h 文件 其中包含很多类 嵌套类和方法 我想在 php 示例中包含这个静态库并尝试使用它 我想提一下 我是 php 新手 我已经在 test cpp 文件中测试了我的 libray a
  • 检查 RoutedEvent 是否有任何处理程序

    我有一个自定义 Button 类 当单击它时 打开特定窗口 它总是执行相同的操作 我添加了一个可以在按钮的 XAML 中分配的 Click 事件 就像常规按钮一样 当它被单击时 我想执行 Click 事件处理程序 如果已分配 否则我想执行默
  • 将二进制数据从 C# 上传到 PHP

    我想将文件从 Windows C 应用程序上传到运行 PHP 的 Web 服务器 我知道 WebClient UploadFile 方法 但我希望能够分块上传文件 以便我可以监控进度并能够暂停 恢复 因此 我正在读取文件的一部分并使用 We
  • 如何分析组合的 python 和 c 代码

    我有一个由多个 python 脚本组成的应用程序 其中一些脚本正在调用 C 代码 该应用程序现在的运行速度比以前慢得多 因此我想对其进行分析以查看问题所在 是否有工具 软件包或只是一种分析此类应用程序的方法 有一个工具可以将 python
  • ASP.NET MailMessage.BodyEncoding 和 MailMessage.SubjectEncoding 默认值

    很简单的问题 但我在 MSDN 上找不到答案 查找 ASP NET 将用于的默认值 MailMessage BodyEncoding and MailMessage SubjectEncoding 如果你不在代码中设置它们 Thanks F
  • CSS:如何在模糊的背景上剪切文本?

    我想重新创建以下样式 我想出了以下内容 问题是剪切不会影响模糊滤镜 我不知道如何解决它 这是我的 HTML 代码 glass width 40 height 100 position absolute background rgba 255
  • .NET Core 中的跨平台文件名处理

    如何处理文件名System IO以跨平台方式运行类以使其在 Windows 和 Linux 上运行 例如 我编写的代码在 Windows 上完美运行 但它不会在 Ubuntu Linux 上创建文件 var tempFilename Dat
  • 阻止通过 GET 传递“提交”按钮值?

    我正在尝试通过 GET 传递表单信息 这很重要 这样人们就可以将表单选择中过滤后的数据发送给其他人 问题是 使用下面的代码 它不仅传递过滤器信息 还传递提交表单值 如下所示 index php month filter Feb year f
  • 更改 Windows Phone 系统托盘颜色

    有没有办法将 Windows Phone 上的系统托盘颜色从黑色更改为白色 我的应用程序有白色背景 所以我希望系统托盘也是白色的 您可以在页面 XAML 中执行此操作
  • 矩阵到数组 C#

    这将是转换方阵的最有效方法 例如 1 2 3 4 5 6 7 8 9 into 1 2 3 4 5 6 7 8 9 in c 我在做 int array2D new int 1 2 3 4 5 6 7 8 9 int array1D new
  • 使用 div 或表格来包含链接列更好吗?

    我的页面底部有 3 列链接 每列都放入一个 div 中 所有三个 div 都包装在页面中央的一个大 div 中 这是更适合桌子的东西还是桌子不适合这项工作 您还可以使用 ul http www w3schools com tags tag
  • 使用 QtWebEngine 将 C++ 对象暴露给 Qt 中的 Javascript

    使用 QtWebkit 可以通过以下方式将 C 对象公开给 JavascriptQWebFrame addToJavaScriptWindowObject如中所述https stackoverflow com a 20685002 5959
  • Qt 布局,在小部件大小更改后调整到最小大小

    基本上我有一个QGridLayout里面有一些小部件 最重要的是 2 个标签 我用它们将图像绘制到屏幕上 好吧 如果用户愿意 他可以更改传入图像的分辨率 从而强制标签调整大小 我们假设标签的初始大小是320x240 用户将 VideoMod

随机推荐

  • 将两列添加到 vba 用户窗体组合框

    我有一个用于库存控制的用户表单 用于进出物品 我想做的就是修改下面的代码以在其代码旁边显示每个物品名称以进行搜索物品 代码 Private Sub ComboBox1 Click Dim i As Integer Dim j As Inte
  • 从 http 服务流式传输大文件

    我正在编写一个组件来从 HTTP 服务传输大数据 4 GB 该组件采用 URL 和目标流 目标流可以是文件流 也可以是 POSTS 到不同 HTTP 服务的流 甚至两者都是 作为组件的作者 我需要执行以下步骤直到完成 从 HTTP 流中读取
  • R闪亮制作子面板

    是否有一个简单的解决方案可以使 R 中创建的主选项卡面板中的选项卡面板闪亮 以下是我创建主面板的方法 mainPanel tabsetPanel id tabSelected tabPanel Tab1 uiOutput Tab1 tabP
  • 用于数据存储的 Lua 与 XML

    我们中的许多人都被灌输了使用 XML 来存储数据的观念 它的优点和缺点众所周知 我当然不想在这里讨论它们 然而 在我用 C 编写的项目中 我也使用 Lua 我非常惊讶 Lua 能够如此出色地存储和处理数据 然而 Lua 的这一方面却鲜为人知
  • 在UIPickerView而不是UIView中响应touchesBegan

    我有一个 UIPickerView 在不使用时会淡出至 20 alpha 我希望用户能够触摸选择器并使其淡入 如果我在主视图上放置一个 TouchBegan 方法 我就可以让它工作 但这仅在用户触摸视图时才有效 我尝试对 UIPickerV
  • 使用 join 获取嵌套对象数组的 SQL 查询

    摘要 我将从 JSON 模式开始来描述期望 请注意具有嵌套对象数组的角色 我正在寻找一个可以通过单个查询获取它的 智能查询 id 1 first John roles Expectation gt array of objects id 1
  • 使用 WPF WebBrowser 控件时如何抑制脚本错误?

    我有一个 WPF 应用程序 它使用 WPF WebBrowser 控件在平面显示器上向开发人员显示有趣的网页 如新闻源 问题是我偶尔会遇到 HTML 脚本错误 该错误会弹出一条令人讨厌的 IE 错误消息 询问我是否要 停止在此页面上运行脚本
  • 如何在数据表中格式化货币?

    This is a table which display transactions implementes using DataTables https datatables net document ready function var
  • 为什么 html() 执行 JavaScript,而innerHTML 不执行?

    为什么这个会执行
  • 如何在 Xamarin Forms 中显示 ToolBarItem 图标的徽章计数

    它不是关于如何显示通知徽章 也不是关于显示工具栏项目图标 如何在工具栏项目图标上显示徽章计数是一个明显的问题 我正在共享代码以在 XF 内容页面中创建带有图标的 ToolbarItem 在cs文件中 ToolbarItem cartItem
  • 如何使用 python (requests/urllib3) 登录 facebook?

    我正在尝试使用http docs python requests org en latest http docs python requests org en latest 自动登录 Facebook s requests session
  • 如何递归地对特定数组键的所有值求和?

    我有一个像这样的数组 Array 1000 gt Array pv gt 36 1101 gt Array 1102 gt Array pv gt 92 pv gt 38 pv gt 64 如何找到带有键 pv 的所有数组元素的总和 无论它
  • PHP:自引用数组

    有没有办法从数组中引用数组键 这在代码格式中可能更有意义 array array Key1 gt array Value1 Value2 Key2 gt this Key1 我想要的是为了 array Key2 输出与 array Key1
  • 如何优化像素艺术编辑器中的绘制区域

    我有像素艺术创作程序 并且画布上有矩形 它们是一个字段 像素 对于数据量不大 例如 128x128 来说 这是一个很好的解决方案 如果我想在画布上创建 1024x1024 矩形 这个过程会很长 RAM 使用量约为 1 2 GB 之后程序运行
  • 带参数的累积正态分布函数的反函数

    我想在 C 中实现与 matlab icdf 函数等效的功能 我已经找到了这篇有用的文章 https www johndcook com blog cpp phi inverse https www johndcook com blog c
  • Pyspark AWS 凭证

    我正在尝试运行一个 PySpark 脚本 当我在本地计算机上运行它时 它可以正常工作 问题是我想从 S3 获取输入文件 无论我如何尝试 我似乎都无法找到设置 ID 和秘密的位置 我找到了一些有关特定文件的答案 前任 通过 Spark 或更好
  • 如何在 F# 中编写枚举而不显式分配数字文字?

    我在 F 中有一个枚举 如下所示 type Creature SmallCreature 0 MediumCreature 1 GiantCreature 2 HumongousCreature 3 CreatureOfNondescrip
  • 在 R 中将文本框保存为 pdf

    我正在尝试在 R 中创建项目符号类型列表 并希望将其保存为 pdf 格式 这成功地在窗口上打印了项目符号列表 a paste0 Starting portfolio value prettyNum 1000000 big mark scie
  • JPQL (JPA) 如果列表有交集则查找对象

    我有两个类 每个类都有一个标签列表 现在我想找到每一个对象ClassA包含列表中的任何项目ClassB 这可以用 JPQL 实现吗 或者使用单个查询 public class ClassA private List
  • 在 Qt 中解析 HTML 的最佳方法?

    在 Qt 中 我将如何解析充满 BAD html 的页面上的所有 a html 标签 href 属性 我会使用内置的 QtWebKit 不知道它的性能如何 但我认为它应该捕获所有 坏 HTML 就像是 class MyPageLoader