webkit开发教程,WEBKIT用什么语言开发的

首页 > 实用技巧 > 作者:YD1662023-06-18 18:22:58

想要追踪所有请求的话,我们还需要对 PyQt 的内部构件有更深入的了解。了解到,Qt 提供了一个 NetworkAccessManager类作为 API 接口,通过调用它可以监控应用加载页面时所执行的请求。我们需要自己编写一个继承自 NetworkAccessManager 的子类,添加必要的事件监听器,然后使用我们自己编写的 manager 来通知 webkit 视图执行相应的请求。

首先我们需要以 NetworkAccessManager 为基类创建我们自己的网络访问管理器。

webkit开发教程,WEBKIT用什么语言开发的(5)

在这里需要提醒大家的是, Qt 的某些实现并不像想象中那么简单明了,比如说从响应中获取状态码就十分繁琐。首先,你得把请求对象的类属性作为参数传入 response 的方法 .attribute() 中,.attribute() 方法的返回值是 QVariant 类型而非 int 类型。接着,需要调用内置函数 .toInt() 将其转换成一个包含两个元素的元组,最终得到响应的状态码。

现在,我们终于有了一个记录请求的表和一个监控网络的 manager,接下来只要把他们聚拢起来就可以了。

webkit开发教程,WEBKIT用什么语言开发的(6)

现在,运行浏览器程序,在地址栏键入 url,就可以看到在主页面下方的记录表中记录下的所有请求。

如果你有兴趣的话,还可以为浏览器添加很多新的功能:

通过content-type添加筛选功能

添加记录表的排序功能

添加计时器

高亮显示出错的请求(比如说把错误信息置为红色)

显示出更为具体的请求内容,比如说完整的头信息、响应内容、请求方法等。

增加一个重复发送请求并加载出来的选项。比如说用户可以点击在记录表中的请求来重试请求。

其实还有太多的功能可以继续完善和改进,你可以一一尝试一下,这会是一个非常有趣而且收获良多的学习过程。但是如果想把这些功能都说完,估计都能写一本书了。所以限于篇幅,本文就不一一介绍了,感兴趣的朋友可以参考其他书籍和网上教程。

增加解析自定义 JavaScript 脚本的功能

我们终于迎来最后一个功能了!就是解析在页面中包含的 JavaScript 脚本。

基于我们之前已经打下的基础,要完成这个功能非常简单。我们只需要在添加一个 QLineEdit 组件,把它和页面联系起来,然后调用 evaulateJavaScript 方法就可以了。

webkit开发教程,WEBKIT用什么语言开发的(7)

下面是这个功能的示例。看,我们的开发者工具已经整装待发了!

webkit开发教程,WEBKIT用什么语言开发的(8)

上一页123下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.