查看: 7803|回复: 1

[转载] YouKu#iqiyix#tudou#letv播放器的一种AVM2代码去广告修改

[复制链接]
招聘 : 信息技术专员
论坛徽章:
37
会员2006贡献徽章
日期:2006-04-17 13:46:342013年新春福章
日期:2013-02-25 14:51:242014年新春福章
日期:2014-02-18 16:41:11马上有车
日期:2014-02-18 16:41:11马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有对象
日期:2014-02-19 11:55:14马上加薪
日期:2014-02-19 11:55:14技术图书徽章
日期:2014-05-19 11:17:53
发表于 2014-11-10 07:59 | 显示全部楼层 |阅读模式
如今广告也成为我们防范的对象了
首先要感谢
OpenGG.Clean.Player 的作者 鲁夫的爱
YoukuAntiADs@harv.c.uc 的作者cinhoo 还有很多编写相关插件和工具的开发者
感谢yndoc pcxfirefox xxy171070 beyonk jc3213(mozest) baga9 lastdream2013 _一方通行、xplsy等坛友和众版主的帮助和测试
还有要感谢一下pullywood(普利坞),chrome下使用代{过}{滤}理方法是来自他的创意.
----------------------------------------------------------------
强烈不齿于某些人的直接抄袭行为
谢谢大家的支持.
Twitter:@sdAonDoM  GitHub:@kafan15536900
提醒:
凡使用帖中播放器仍然出现"浏览器兼容性的问题",均意味着你仍然使用着官方播放器,请检查脚本和其支持插件是否正常加载
更换或修改uc脚本后请手动清理startupCache
土豆如果只有声音无画面,请暂停再播放或者拖动播放进度条
报告问题时请一定要注意(不符合要求的报告将不被采纳):
当本帖中播放器正确加载后,对视频点击鼠标右键将出现 Mod 或者 noAds 字样
报告中请说明浏览器版本与使用何种脚本方案(uc,gm,扩展 在线还是本地)
特别加上一条,一定要附带测试地址
不合要求的我现在理都不理了
本帖中老版本播放器已经删除
新的修改版与YoukuAntiADs(haoutil)项目同步
测试用的版本将会同步到haoutil项目svn/trunk/player/testmod/下
下载播放器的坛友请番茄后前往YoukuAntiADs(haoutil)项目 testmod jym2005分流

觉得麻烦的伸手党请下载扩展:
Firefox:
jc3213(mozest)绿色播放器  本站主题 Mozest
rasso1 AntiChinaVideoAdsAlliances  本站主题
cinhoo版本(扩展+脚本)
Chrome:

ADfree.Player.Offline(扩展),糖醋咖啡
Video.Clean.Player.Offline(扩展),作者 yndoc
Onens.Clean.Player(扩展+脚本),作者 gesion
Adkill and Media Download(扩展),作者 xplsy

本贴所提供附件无法直接使用,因此要伸手的话请慢慢阅读
播放器使用依赖脚本,在线是使用需要自行开辟服务器空间,脚本可以采用YoukuAntiADs并需自行修改其中播放器地址
FF本地使用请安装UserChromeJS(附带Chrome目录打包 chrome.rar (238.47 KB, 下载次数: 3520)  2014-4-29 14:02 上传
点击文件名下载附件


,带有cinhoo的ku6播放器.坛友一定要自行下载cinhoo或者本帖中的播放器和脚本进行更新)
请勿在此询问如何使用了,看188楼
更换脚本后出现问题请参看226楼

----------------------------------------------------------------
目测本修改版没有 视频前长时间等待的问题 ,出现此情况请给我反馈,以便定位问题
修改版可以在无 ABP 奶牛 等过滤的情况下实现无广告,同时在有过滤的情况下无黑屏
注1:由于跨域限制,本帖中版本不一定能在Chrome中充当本地版播放器.有需要请前往,Chrome版块帖子
============
11.6
pps调用播放器直接使用iqiyi_out替换,鉴于pps已经名存实亡.
后期修改pps播放器的可能性小,就算是替换iqiyi_out产生某些不方便的地方只要能够播放就不会再开pps的坑
(chrome用户如果你无法播放,请保证版本大于38,然后前往chrome://plugins 禁用ppapi flash 同时 启用npapi flash.原因不明)



  •                         'pps': {
  •                                 'player': refD + 'iqiyi_out.swf',
  •                                 're': /https?:\/\/www\.iqiyi\.com\/common\/.*\/pps[\w]+.swf/i
  •                         },



复制代码

============
10.30 已更新至testmod
例行更新,不更新也没事
letv yk
============
10.9
更新iqiyi5 到 5.2.4-2.2.1
============
9.27
更新sohu_live 到 201409251925
更新sohu 到 201409151619
排除乐视网盘播放器

  • 'letv': {
  •                                 'player': refD + 'letv.swf',
  •                                 're': /http:\/\/.*letv[\w]*\.com\/(hz|.*\/((?!(Live|seed|Disk))(S[\w]{2,3})?(?!Live)[\w]{4}|swf))Player*\.swf/i
  •                         },

复制代码

============
9.22
此更新被9.27替代
============
9.13
tudou 回滚 V2.1.0.1405291358
必须强调的是 tudou网播放器显示不全,是因为官网css文件存在问题(就算是官方播放器也显示不全)
本来只是为了跟随一下官方版本号而已
PS. 因为有人认为本次更新是因为所谓的"播放器显示问题",还说我这更新是自己打自己脸 因此我回滚版本,让我的脸好受一点
============
9.7
固化iqiyi5中的p2pcore,不再需要iqiyip2p规则了
============
9.4
***原来也用的我的,用了也不来说一声
============
9.2

  •                 'sohu': {
  •                                 'player': refD + 'sohu.swf',
  •                                 're': /http:\/\/tv\.sohu\.com\/upload\/swf\/(?!(live|\d+)).*\d+\/(main|PlayerShell)\.swf/i
  •                         },
  •                         'sohu_live': {
  •                                 'player': refD + 'sohu_live.swf',
  •                                 're': /http:\/\/tv\.sohu\.com\/upload\/swf\/(live\/|)\d+\/(main|PlayerShell)\.swf/i
  •                         },
  •                         'letvskin': {
  •                                 'player': 'http://player.letvcdn.com/p/201407/24/15/newplayer/1/SSLetvPlayer.swf',
  •                                 're': /http:\/\/.*letv[\w]*\.com\/p\/\d+\/\d+\/(?!15)\d*\/newplayer\/\d+\/S?SLetvPlayer\.swf/i
  •                         },



复制代码

============
8.15
再次排除liveletv

  • 'letv': {
  •                                 'player': refD + 'letv.swf',
  •                                 're': /http:\/\/.*letv[\w]*\.com\/(hz|.*\/((?!(Live|seed))((C|S)[\w]{2,3})?(?!Live)[\w]{4}|swf))Player*\.swf/i
  •                         },

复制代码

============
8.10 update.1
更新了iqiyi_out  去掉了下方的新闻条


  •                         'iqiyi': {
  •                                 'player0': refD + 'iqiyi_out.swf',
  •                                 'player1': refD + 'iqiyi5.swf',
  •                                 'player2': refD + 'iqiyi.swf',
  •                                 're': /https?:\/\/www\.iqiyi\.com\/(player\/\d+\/Player|common\/flashplayer\/\d+\/(Main)?Player_.*)\.swf/i
  •                         },

复制代码

============
8.10
去除tudou的10分钟限制,不登陆也能看.
抢用户数不能这么搞
播放器维持老版本,同时去除了弹幕功能
============
7.19
更新sohu到201407171045
chrome下如果想看直播请使用在线地址,同时务必自行补全组件
============
7.3
letv 更新内置pccs
版本没有变化,kernel会载入6.16号的
============
6.22
yk 修复联播,之前会卡在跳转过程中
版本依旧为4.1.2602
============
6.10
不更新问题也不大的
yk更新到 4.1.2602 (loader与player一起)
同时匹配loader部分的正则表达式需要稍微改一下

  • 'youkuloder': {
  •                                 'player': refD + 'loader.swf',
  •                                 're': /http:\/\/static\.youku\.com(\/v[\d\.]*)?\/v\/swf\/loaders?\.swf/i
  •                         },

复制代码

============
6.2
最近GCODE的访问会有问题,请使用Proxy获取新文件
为修正f.youku.com问题更新youku与tudou相关swf
土豆采用官方新版本播放器,已经从内部去除弹幕功能...别想打开弹幕了(要看自觉去ABC站,新版本自然已经加入新彩蛋
youku沿用老版本,只是修复了下
Youku 4.1.2523 Fix
Tudou V2.1.0.1405291358
Tudou SocialPlayer V2.1.0.1405141104
============
5.14
进过测试UC桌面浏览器已经修复了之前的Proxy BUG
如果想在UCBrowser使用本项目相关Chrome扩展,请遵循以下步骤:
1.UCBrowser 为 1.0.355.1275 或更高版本
2.替换UCBrowser 中内嵌PPAPI Flash 为12.0.0.44版本
(DLL位于安装路径\[版本号]\PepperFlash目录下,请善用系统搜索)相关参考
3.清除IE中的代{过}{滤}理设置,可理解为去掉所有选项的勾
捕获.JPG (58.31 KB, 下载次数: 9)
下载附件
2014-5-14 15:00 上传




============
5.8
把PPTV(PPLive)更新到了3.1.12.2
文件不在testmod里面
============
4.26 Update.2
此更新已被 4.26 Update.3代替
使用带debug的flash player测试的提示是:Error: 皮肤抽取错误
但是我没有能够在swf里面找到修复这一错误的位置.为了临时解决这个问题,我强制letv播放器只使用内嵌配置文件
============
4.25
letv sdk 更新到 LETV_2.0.3@KERNEL_2014042401
注意本次更新后,letv部分视频在特定网页中将会无法播放.解决方式见4.26 Update.3
对于这些视频请寻找letv网站中的其他页面进行播放.
不能播放的视频的播放器请求会类似于下方,原因确认为pccs文件不合适,

  • http://example.com/LetvPlayer.swf?pccsUrl=http://www.letv.com/zt/cmsapi/playerapi/pccs_hz_2014042415.xml

复制代码

============
3.29
iqiyi一直一来就是使用混淆,隔了这么久一看果然是各种字符乱飘
pps的播放器已经不是iqiyi的壳子了,可能是一个定制的组合版本吧
iqiyi v5 更新到 5.1.5.3-2.1.4
添加pps 版本 V4.0.2.242
(注意:测试中Chrome中不能开启 "阻止第三方 Cookie 和网站数据" ,否则无法正常播放)
============
3.15
由于tudou_sp修改了一个老版本,所以请之前有更新过swf文件的坛友一定要重新从testmod中更新新版本
在线文件不再支持GM脚本替换.
1.adkill offline已更新完成Crossdomain Spoofer
2.Crossdomain Spoofer:
         规则与代码独立化
        与SwitchySharp兼容提升,全局代{过}{滤}理环境下也能够正常使用.
3.Chrome下如果想使用sohu.swf看直播,请一定要使用在线服务器存放swf,同时开启Crossdomain Spoofer(规则请自行写)
而且需要在服务器正确路径补齐sohu播放器所需要的s1.swf与PLVideoCore.swf.(具体路径请载入官方版本然后F12自行查看)
============
10.26 noadplayer(位于sinaapp) 你也知道怕抄水表?
今天noadplayer将收费的名目改为向慈善机构捐款了.
昨天的页面可不是这样的哦~
不是你心里有鬼,有必要改吗?(附上历史网页截图,今天右边多了些东西.一些文字也被改变了

============
10.25 noadplayer(位于sinaapp)抄袭情况已经确认
真的很巧,noadplayer也在今天更新了
新tudou不会改了吧?
直接去掉了我的noAds标记换成的他的noadplayer..
你问我,为什么我这么确定? 很简单,我在文件内部看到了自己的记号
iqiyi直接指向了 一方 的开源地址,右键点击直接有我这的标识noAds(目测也没有先一方打招呼,直接重定向了
noad.JPG (90.02 KB, 下载次数: 12)
下载附件
2013-10-25 17:07 上传




============
10.25
更新一下ku6的播放器...(都没人去这地方看视频,不懂为什么就是有人要
修改位置为非常规位点,而且我目测有超过3个可用的修改位置.
要是以后又让我发现某些人不说明,而且在我这同一个位置用同样的方式修改实现去广告,我就只能预祝这些家伙死于户口本了
更新后版本为Version 3.0.2375 build:201310181348
注:Chrome下无法直接使用,请修改正则表达式直接替换v.swf
============
10.18 许久没有关注过的noadplayer(位于sinaapp)
本以为按照以前opengg留下的老东西死抄的话应该早就该退隐江湖了,没想到这个居然还活着
更奇怪的是iqiyi和letv的东西也被折腾上去了.(我立马感到一丝不安
同时loader+player的某一些关联方式也一样
sinanoadloader.JPG (8.22 KB, 下载次数: 13)
下载附件
2013-10-18 23:01 上传




这个的yk版本和我最后更新的版本一致2079..我对比一看,真是不出所料(我是无语了,就cinhoo和我的修改点和方式就不一样,这还能出来个完全一样的!谁敢信!
sinanoad.JPG (18.54 KB, 下载次数: 9)
下载附件
2013-10-18 22:49 上传




他的2079和我的区别只是他的用了sinaapp的中转解析服务(opengg的遗产?)并且标示不同而已(我的是noAds)
其他部分完全一样!完全一样是什么概念!?
就是修改方式没有任何区别(修改点位置语法完全一样)..加之我没有直接公开的1080p和去二维码的修改点也被完全同步
写普通程序尚有区别,更何况是反编译的修改点和修改方式呢? 我是严重怀疑,这是不是抄到我这了
当然,出问题的不仅仅是yk的播放器,还有其他的

完了 完了 letv也是一样 和我的20132901修改版完全一样啊!!!!
sinaletv.JPG (14.72 KB, 下载次数: 11)
下载附件
2013-10-18 23:14 上传




就是把我的noAds标记直接改成了他的NoAd***,现在某些人的脸皮真是厚啊

我想其他的也不用测试了..十有八九吧
老实说,抄可以,请多少要注明来源
追踪他的微博发现了更操蛋的事情,我现在真心想怒f**k他

============
8.21
近期出现了对来源请求中requestHeaders的Referer的参数进行判断的情况.
凡是来源Referer不符合yk要求的请求全部返回403 Forbidden.(具体判断标准不明确)
这一策略直接导致在用户在使用GM脚本和Chrome扩展的情况下在第三方网站(网站引用的yk外链地址)中使用去广告播放器出现"2001 找不到视频源"错误(因为替换播放器会导致Referer与官方播放器所产生的Referer值不同)
< font color="YellowGreen">这一次受影响的部分为与本项目关联的 所有GM脚本 所有Chrome扩展 (无论在线还是本地)</font>
Firefox扩展与uc脚本不受影响(无论在线还是本地)
应对方式:
GM脚本(Userscripts) 由于脚本本身运行环境限制无法解决
Chrome扩展 在扩展中添加修改Referer的能力,并实时修改对youku**器的访问请求中的Referer参数.参考修如下(有youku就行,或者干脆没有这个参数)

  • http://player.youku.com/player.php/sid/XNTcxNzA0OTg0/v.swf

复制代码

============
YoukuV 本地服务器修改版
原版代码来自cinhoo的youkuv
经过修改,可支持多个本地swf播放器和本地播放器核心.测试环境为Ubuntu
需要就修改本地Hosts文件和占用本地80端口
可用win版本已经同步到GCODE,linux版本未同步(里面的swf文件是需要更新的)
youkuv.jpg (290.33 KB, 下载次数: 16)
下载附件
2013-7-28 12:00 上传




============
6.22
路过了一下sinaapp的noadpalyer..
居然还要每天去点一次授权按钮,感觉不是很合适的样子
它基本是按照opengg的结构修改的(版本1713),而且改造了代码:1000(就是在国外视频被墙)的错误提示界面
然后在sae上搭好了和opengg类似的服务器,用一个php生成cookie做授权..
============
6.7
使用的方式是Alchemy,也就是用AVM2跑C/C++代码.
首先是目前的软件是基本不认识这样的代码的,然后C/C++代码已经变成FSM代码.对我来说基本就和天书差不多了
我看了一下解密的部分..将近800行的奇怪代码
有12个分支似乎要操作12个变量,反正就是这样了..看不懂,只能等高人了
Alchemy_VM_Architecture
============
6.5
iqiyi出现了对crossdomain.xml的访问限制.
可能与HTTP访问头中的Referer有关..
目前存放地址对coreUrl存放网址根域名下的crossdomain.xml访问被拒绝,这将可能导致使用userscripts.org上脚本(及其衍生品)的用户无法正常载入iqiyi v4 v5 播放器
其他版本应使用技术不同,如本地版(包括FF和chrome扩展)和uc脚本在线版本不受其影响.

目前还没有坛友有相关反馈,应该影响不大 我测试也只有maxthon受到影响
目测应该是iqiyi的防盗链的影响,不是有针对性的屏蔽 备用的swf和相关文件也已经做好
================
5.1
在线取参数的PHP(仅限土豆外链),作为劳动节的纪念
流量有限(200MB/天),最高能接受 18000次/天,超过会自动关闭.
然后下面的是用在cinhoo脚本里面的部分(直接替换即可).为了节省流量,player(turl)参数不正确是不会有任何数据返回的

  •                 GM_xmlhttpRequest({
  •                     method: isFx ? 'HEAD' : 'GET',
  •                     url: isFx ? player : 'http://tfetcher.duapp.com/tfetcher?turl=' + encodeURIComponent(player),

复制代码

============

4.24 尝试开坑php,不过服务器不负责
根据baga9498楼的说明.确认土豆播放器(官方版本也一样)存在bug.
播放器在非激活窗口播放视频时(特指播放youku视频源,如连续剧),可能无法成功清除loading画面帧.
表现为:只有声音无画面或者画面上有透明菊花,与浏览器无关与FP版本无关与网速无关
目前解决方法:暂停再播放 拖动播放进度条
============
4.22
lastdream2013提供了一个本地在线自动判断的修改版uc脚本
直达楼层
============
4.9
作为AB站粉..不能接受AB站因版权限制不能播放的新番在其他网站上有广告植入
所以,Sorry Letv
由于Letv将部分核心代码在线动态加载并采取了和tudou类似的压缩策略,本地播放器未能完全去除用户跟踪部分,同时不能保证除FF以外浏览器的兼容性
修改版播放器基于目前版本最新的Letv主站播放器,目测使用uc脚本的情况下支持外链
压缩包中包含了增加Letv替换的修改版YoutuAntiAds脚本,使用时请按照脚本中路径将swf文件放入chrome/swf文件夹(或自行就改相关语句)
fix.1 LivePlayer无广告不替换
============
3.29 应一些坛友要求开坑土豆
压缩土豆:ADOBE解释
示例.PNG (6.81 KB, 下载次数: 10)
下载附件
2013-3-30 23:15 上传




基于PortalPlayer_26
土豆会从网站上动态更新插件(SWZ),然后解码后加载到播放器中
本身的播放器也是一个动态自身给自身解压缩的swf文件..很可怕
新的播放器增加了和电视剧播放相关的大量修改,目测播放它们时会与yk服务器通信
然后由于水平问题没有找到让Chrome本地加载并完全正常播放的方法,见谅
============
3.27 更新.2
跟随OpenGG脚步,从本版本开始将尽可能去除youku播放器的反馈数据,保护用户隐私数据
版本和iqiyi标识同步使用noAds+原始信息
============
3.25 更新
尝试了一下iqiyi的去广告,感觉非常不好弄.. 不能删除函数,一删除就会卡在载入前
个人的一个尝试是用ABP等插件屏蔽广告,然后单独修改一下 黑屏的定时器(com.qiyi.cupid.adplayer.model.AdBlockedBlackScreen下) 让黑屏快速消失..我水平问题,没找到好的修改点
另一个和youku的一样作用于广告数据...不过我测试的时候偶尔会出现播放器直接unload.
后记:
我这都崩成渣渣了,还是用ABP去广告然后单独过黑屏比较好...原因可能是iqiyi的代码写得不够好吧,个人感觉不如youku.当然,我水平也是很渣的
============
3.22 更新
之前一直在纠结于为什么cinhoo修改版的体积为什么比我这的小那么多,终于在cinhoo的解答下豁然开朗了
我们修改的原始player版本本来就不一样...我的修改版本是一直基于player_yk的,现在更新一个基于普通player的1730版本,修改方式和以前一样
应该可以在有针对性广告屏蔽的情况下正常无黑屏
============
3.21 更新
针对播放器1726ysp_youku03-18-15-42新增一个修改点,不要担心屏蔽valf.atm.youku.com了,放心去屏蔽吧
改了一点点去3分钟定时器检测也就是所谓"不兼容"和前面的广告黑屏等待
由于新的播放器针对老版本1670而言,新增了FrontChecher和AdHolderMediator同时对FrontMediator进行了修改.
这次动手的部分放在FrontChecher里面
AdHolderMediator主要的功能就是停住黑屏,但是如果能骗过FrontChecher,AdHolderMediator里面的函数就应该不会启动
修改点已经高亮,稍微改了一点点,让youku自己骗自己吧
============
3.20 过程
1.准备工具:
0.PNG (99.7 KB, 下载次数: 12)
下载附件
2013-3-20 22:03 上传




2.用Sniffer分析一下YouKu广告是如何载入的
1.jpg (195.97 KB, 下载次数: 11)
下载附件
2013-3-20 22:04 上传




可以发现服务器返回的JSON数据里面满满的AD
2.jpg (273.2 KB, 下载次数: 27)
下载附件
2013-3-20 22:04 上传




3.反编译swf...这个工具真心很强大 然后AVM2的语法是必须要了解的部分,具体可以查看ADOBE官方WIKI

对比Sniffer的图片 是不是有很眼熟的感觉
好一个FrontChecker
FrontChecker.PNG (98.09 KB, 下载次数: 8)
下载附件
2013-3-21 23:24 上传




这个VideoADData与JSON数据的相似程度..大家都懂的
既然AVM2代码都出来了,修改的地方就可以很随意了,只要能达到效果即可
下面是我的一个修改点,具体的方式就是让播放器取不到JSON数据.

认证徽章
论坛徽章:
0
发表于 2015-6-12 11:44 | 显示全部楼层
请问版主,只使用ABP规则,不替换播放器,能否去除所有的视频网站的视频广告?

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

SACC2019中国系统架构师大会

【数字转型 架构演进】SACC2019中国系统架构师大会,7折限时优惠重磅来袭!
2019年10月31日~11月2日第11届中国系统架构师大会(SACC2019)将在北京隆重召开。四大主线并行的演讲模式,1个主会场、20个技术专场、超千人参与的会议规模,100+来自互联网、金融、制造业、电商等领域的嘉宾阵容,将为广大参会者提供一场最具价值的技术交流盛会。

限时七折期:2019年8月31日前


----------------------------------------

大会官网>>
TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 
京ICP备09055130号-4  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表