騰訊視頻是騰訊旗下的視頻播放產品,定位于中國最大在線視頻媒體平臺,于2011年4月正式上線運營獨立域名的視頻網站, 支持豐富內容的在線點播及電視臺直播,提供列表管理、視頻音量放大、色彩畫質調整等強大的功能服務。
原標題:如何用技術手段“干掉”優酷、騰訊視頻 App 里討厭的廣告? 作者簡介:互扯程序,某互聯網公司 P8 級專家攻城獅,曾參與過央視全臺網的研發工作。目前正在做車聯網項目的云平臺的架構設計與研發工作。平時喜歡打球游泳,偶爾發表一些技術文章,有個公眾號叫「互扯程序」。 寫在前面 本文主要目的是交流學習 Charles 抓包工具的使用技巧,以及給大家分享一下分析問題的思路,歡迎大家評論轉發,但不能以盈利為目的行為。廣告對于內容提供商來說是重要的財務來源,請大家多多看廣告,這樣才能促使內容提供商發布更多的內容供大家欣賞。 這篇文檔是 Charles 抓包工具的高級用法,如何下載安裝以及怎樣配置,請看我上一篇關于 Charles 的介紹。 前幾天寫了 DNS 域名解析的文章,在寫的過程中讓我又加深了對域名解析的理解,然后又結合 Charles 抓包工具,所以突發奇想,能不能做點好玩的事情呢?那我們就繼續我們今天的主題吧! 如何使用抓包神器 Charles? 移動互聯網的發展,促使各大商家的廣告投放從傳統媒介轉移到了移動設備終端,所以我們在使用各種視頻 App 的時候,會有大量的廣告來緩解我們的“視覺疲勞”。哈哈,追劇的人趁著廣告休息休息自己的眼睛。那不想休息的人呢? ![]() 怎么把廣告去掉呢?那就要使用我們的抓包神器 Charles 了,我們把整個抓包過程和分析過程按照步驟一一寫出了,供大家學習交流。 第一步先去掉系統代理(系統代理默認是打開的),因為這樣減少數據量,方便我們觀察。 第二步配置 SSL 證書,因為很多視頻 App 發送的部分請求是 HTTPS 的。 第三步配置手機代理。 以上三步在上一篇的 Charles 教程里都有,不了解的同學先移步過去按照過程配置一下,支持 Windows 和 Mac,完成之后就可以一步步地跟著我下面的教程繼續了。 去除優酷視頻 App 廣告 打開優酷 App,這時候你會發現一堆的請求被我們截取到,這些基本沒用,全部清空。然后,隨便選擇一個視頻,點擊打開,我們又攔截到了一堆的請求,這時候視頻里的廣告開始播放,OK,這些抓取到的數據,其中就有廣告數據。那我們就專心關注這些數據,一一打開觀察一下,后續再進來的請求基本沒用了,我們記錄下來最后位置。 ![]() ![]() 觀察一下返回的 JSON 數據,看看哪個比較像,有一些返回圖片的請求肯定不是了,可以配置排除抓取這些請求,不再抓這樣的包,減少我們要關注的請求量。 ![]() 打開 Proxy -> Recoding Settings... 加入要排除的抓包請求,然后清空頁面,重新點開視頻,這時候我們排除請求就看不到了。 ![]() 但是還是有一堆請求,該怎么辦呢?用一個簡單的原理(想要了解的話,可以看看我上一篇關于 DNS 的文章,不了解也不影響我們繼續下面的教程),把這些域名重定向到另外一個不存在的服務地址,右鍵 -> 選擇 Map Remote。 ![]() 這里我們把它重定向到本機地址不存在的服務端口: ![]() 一個一個的修改嘗試,把所有域名都改一遍,修改一個,點擊一下手機視頻,看看是否播放正常。 ![]() 當你發現廣告不播了,提示錯誤,這說明你找到了那個關鍵的請求。 ![]() 找到這個請求,去掉重定向,發現播放又正常了,OK,確認了我們要找的請求數據。 其實就是 https://ups.youku.com。 下面我們開始分析這個請求: ![]() 我們把返回的 JSON 數據 Copy 出來放到 JSON 瀏覽工具里: ![]() 從這個 JSON 來看,ad 應該就是廣告了,而 Stream 就是實際的視頻流了。我們點擊打開 ad 看到了一堆的連接地址。 ![]() 隨便 Copy 一個放到瀏覽器里,就會播放廣告了。從分析來看,優酷的廣告是分段的,每一小段的廣告組成了他將近兩分鐘的廣告內容。 ![]() 順便看看 Stream 的內容,同樣是一堆的 URL 地址,隨便打開一個,這就是實際播放的視頻了,從分析來看,同樣也是一個片段一個片段組成的一個完整的視頻。 ![]() 到這兒,大家是不是覺得有點意思啊。同時也會有一個疑問,怎么把廣告去掉呢?我們先不著急得到最終答案,先來看看另外一個新功能。我們把剛才的 JSON 數據,保存到桌面,命名為"ups.JSON"備用。然后選中 https://ups.youku.com,右鍵選擇 Map Local,然后點擊 Choose 選擇剛才備份的那個文件,然后點擊 OK。 ![]() 然后看看效果,剛才我選擇的連續劇里面的其中一集,現在不管選擇哪一集,播放的都是剛才那一集。是不是很神奇?聰明的朋友已經想到這是為什么了。我們來講一下 Map Local 的作用是什么? Map Remote 這個在上一遍文章里已經講過,代理轉發,或者叫請求重定向,把一個請求地址轉發到另外一個地址去處理,Remote 是遠程,意思把這個請求重定向到另外一個遠程的地址上。 而 Map Local,顧名思義,就是把請求重定向到本地。而本地的文件里模擬的就是請求的返回結果。所以說,他每次的請求都會被重定向到同一個地方,返回同樣的數據,所以不管點擊任何一個節目,都會播放我們選擇的那條數據。 OK,那么我們該怎么處理廣告呢?我們已經找到了廣告的那段數據,我們嘗試修改廣告的請求地址,改到任意一個不存在的地址,這樣播放器就下載不到這個廣告,就無法進行播放了。 大家會不會認為既然廣告不能播了,那我們要看的電視劇還能正常播放嗎?這是一個很好的問題,試想一下,哪個 App 會因為網絡不通暢導致廣告沒播成,就不再繼續請求視頻數據了?這樣用戶將大量流失,他們肯定會做容錯處理的。 我們先來改改試試,打開剛才保存的 ups.JSON 文件,找到 ad,然后修改里面的地址,然后保存。 ![]() 我們再重新點擊手機視頻,還是有廣告播放,這是因為之前播過廣告了,App 進行了緩存。我們需要操作一下 App,清除緩存。選擇 我的 -> 設置(右上角) ![]() 再次點擊視頻。發現一直在旋轉等待,等了半天,沒播廣告,播視頻了。旋轉等待的原因,是由于我們給了一個無效的廣告地址,他去請求,但是請求不到,一直等到超時返回,才繼續播放視頻。 到這,廣告沒了,大功告成了?沒有,這樣做也太 low 了。還不如看廣告呢...... 前面講的都是分析過程,最后我們要放大招了。把之前所有的配置全都刪除掉,重新來,其實就一步搞定。那為什么要啰嗦半天呢?如果不啰嗦半天,我們學不到東西啊。過程永遠比結果更重要。 我們根據剛才的分析結果:“如果找不到廣告,App 會進行容錯,繼續播放視頻”,我們要動態改寫返回結果,把 ad 改成 ad1。那么 App 找不到 ad 屬性,將解析不到廣告內容,便不會播放廣告,而是會繼續播放視頻,一點卡頓都沒有,因為不像是之前給了個假地址,需要等待超時時間。 Tool -> Rewrite... ![]() ![]() ![]() ![]() OK,大功告成。去 App 里點擊試試看吧。 ![]() 接下來我們再看,如何去除騰訊視頻的廣告,其實更簡單 打開騰訊視頻 App,這時候你會發現一堆的請求被我們截取到,這些基本沒用,全部清空,然后隨便選擇一個視頻,點擊打開,我們又攔截到了一堆的請求,這時候視頻里的廣告開始播放,OK,這些抓取到的數據,其中就有廣告數據。那我們就專心關注這些數據,一一打開觀察一下,后續再進來的請求基本沒用了,我們記錄下來最后位置。 ![]() ![]() 分析騰訊視頻的請求的方法和分析優酷視頻的請求方法是一樣的,點擊每一個請求觀察一下。 只有 https://lives.l.qq.com 這一個請求有大量的 JSON 數據,比較靠譜。 ![]() 把 JSON Copy 出來放到 JSON 編輯器查看。并將 JSON 里每一個 URL Copy 到瀏覽器里打開看看,你會發現廣告可以在瀏覽器里直接播放。證明我們的判斷是正確的,這個請求就是獲取廣告的請求。 ![]() 每一個連接都看一遍后,比較慶幸的是,發現只有廣告,并沒有正片內容,它不像是優酷截取的數據那樣,廣告和正片是放到一個 JSON 數據里進行返回的。對優酷的廣告進行過濾的時候需要對 JSON 進行內容的修改,因為不能影響正片的播放。 所以對騰訊視頻的廣告進行過濾非常簡單,只要把獲取廣告的這個請求 URL 屏蔽即可。怎么做呢?非常簡單。 還記得我們上一章講的 Map Remote 嗎?把 htts://lives.l.qq.com/livemsg 重定向到一個無效的地址即可,這樣 App 在獲取廣告數據的時候獲取不到,為了容錯直接跳過播放廣告,直接去獲取正片的數據進行播放了。 ![]() ![]() 配置完成之后重新播放視頻就會發現它不再播放廣告了。歐耶??,騰訊視頻過濾廣告完成。 本文為作者投稿,歡迎更多朋友微信聯系:donyintxy 投稿,一起為程序員傳播更具價值的優質內容。 作者原文: 騰訊視頻是中國領先的在線視頻平臺,擁有豐富的優質流行內容和專業的媒體運營能力,是聚合熱播影視、綜藝娛樂、體育賽事、新聞資訊等為一體的綜合視頻內容平臺,并通過PC、移動及客廳產品等多種形態為用戶提供高清流暢的視頻娛樂體驗,滿足用戶不同的體驗需求。 | 推薦資訊 總人氣榜最新教程 本月人氣 | |
相關文章相關軟件騰訊視頻最新官方版騰訊視頻官方版 | 45.34MB 愛奇藝視頻官方正式版愛奇藝視頻官方正式版 | 35.10MB 暴風影音最新版下載暴風影音最新版下載 | 50.3MB 酷狗音樂2018最新版下載酷狗音樂2018下載 | 37MB | ![]() |