博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
charles工具过滤腾讯视频播放器广告
阅读量:5965 次
发布时间:2019-06-19

本文共 1278 字,大约阅读时间需要 4 分钟。

    是一个HTTP代理服务器,HTTP监视器,反转代理服务器,当程序连接Charles的代理访问互联网时,Charles可以监控这个程序发送和接收的所有数据。它允许一个开发者查看所有连接互联网的HTTP通信,这些包括request, response和HTTP headers (包含cookies与caching信息)。

Charles主要功能:

  • 支持SSL代理。可以截取分析SSL的请求。

  • 支持流量控制。可以模拟慢速网络以及等待时间(latency)较长的请求。

  • 支持AJAX调试。可以自动将json或xml数据格式化,方便查看。

  • 支持AMF调试。可以将Flash Remoting 或 Flex Remoting信息格式化,方便查看。

  • 支持重发网络请求,方便后端调试。

  • 支持修改网络请求参数。

  • 支持网络请求的截获并动态修改。

  • 检查HTML,CSS和RSS内容是否符合W3C标准。

下面是过滤腾讯视频广告的步骤

  1.首先在Proxy-->Proxy Settings中设置代理服务器的端口并允许所使用http代理

  可以把Proxy下面的Windows Proxys关掉,不然会监控电脑的http请求.会有很多请求.

  2.在手机wifi中使用代理,代理为使用charles电脑的ip和刚才配置的端口(888),这个操作必须让电脑和手机在同一局域网内,不然手机找不到ip。

 

  这样子电脑就可以监控手机的请求了.

  3.下面用手机上的腾讯视频随便点击一个视频,charles监控到这几个请求.

  

  4.点开每一个请求查看数据

  

  最终找个一个返回json数据的请求,这个请求返回了adList以及一系列的广告url,复制这些url在浏览器中就可以看到广告啦,但是我们并不是来看广告的.

  5.过滤广告的方法有两种

  方法一

  第一种是右键那条请求-->Map Remote,然后配置如下

  

  将这条请求转发到127.0.0.1:12345上,实际上12345端口没有开.所以请求一定会出错就会出现这种状况

  

  发现不是请求而是请求,请求转发到请求不到的ip和端口上,这样就无法获取广告的链接也就无法播放广告,而强大的播放器自然不会因为广告请求不到就崩掉了,它会选择继续播放视频,然后这个就可以了.

  方法二

  选择Tools-->Rewrite

  配置一下要重写的请求路径    

    

  再配置一下要重写的内容重写response里面adList为adList111,这样是为了请求到这个json数组后找不到adList这个属性从而无法解析。

  

  最后发现请求的结果从这个

  

变成了这个  

其他抓包工具

是根据网卡抓包,抓的是走网卡发送的所有包,Charles只能抓Http协议和HTTPS协议的包,而Wireshark可以抓任何包。

也是针对web的,同样是Http和Https协议

转载于:https://www.cnblogs.com/aeolian/p/8169371.html

你可能感兴趣的文章
查看数据库错误日志的位置
查看>>
电信网络拓扑图自动布局
查看>>
C#中List〈string〉和string[]数组之间的相互转换
查看>>
yum install 安装 下载好的rpm包 会并依赖包一起安装 zoom电话会议的安装
查看>>
洛谷P1108 低价购买[DP | LIS方案数]
查看>>
通达信里的统计函数及区块背景函数
查看>>
redis主从配置<转>
查看>>
8 行 Node.js 代码实现代理服务器
查看>>
水印,图片验证码
查看>>
C#编程(七十六)----------使用指针实现基于栈的高性能数组
查看>>
PostgreSql 分页limit
查看>>
在MySQL中创建cm-hive使用的数据库及账号
查看>>
HDU 2503 a/b + c/d(最大公约数与最小公倍数,板子题)
查看>>
python总结
查看>>
hdu 5215 Cycle
查看>>
GCD学习(五) dispatch_barrier_async
查看>>
file_get_contents("php://input")的使用方法
查看>>
MeasureSpec学习
查看>>
Android View体系(五)从源码解析View的事件分发机制
查看>>
数据结构 之 并查集(Disjoint Set)
查看>>