當前位置:博客首頁>>分享經驗 >> 閱讀正文

天貓商品詳情頁視頻的下載的思路

作者: 鄭曉 分類: 分享經驗 發(fā)布于: 2017-09-06 14:06 瀏覽:6,822 評論(4)


同事問我如何下載保存一個天貓商品頁中的視頻,我想不就是直接f12查看請求,找到視頻鏈接直接保存下來就行了嗎?瀏覽器也有類似插件可以實現(xiàn)頁面上的視頻下載。

先以這個商品為例:

https://detail.tmall.com/item.htm?id=15385666622

拿過來看了下發(fā)現(xiàn)并不簡單,詳情頁上的視頻,在用f12查看請求時,發(fā)現(xiàn)視頻被分為了幾段,每播放一段就會再下載下一段。所以直接下載完整視頻是不行了。

仔細看頁面的加載請求,發(fā)現(xiàn)在視頻之前有個info.php?vid=xxx的請求,請求的返回格式是xml,而其中的數(shù)據(jù)正是描述這個視頻的。所以想要下載完整視頻得從這個文件下手了。

http://cloud.video.taobao.com/videoapi/info.php?vid=40565937

返回的數(shù)據(jù):


false
338
taobaohttp://img.alicdn.com/bao/uploaded/i2/TB1Y_92KVXXXXaHXpXXSutbFXXX.jpg0true
0




40565937
false
true

其中videos節(jié)點中就是視頻,其中按照清晰度不同,分為不同的video,每個video中的video_url就是視頻地址了,但直接用這個地址是無法下載播放的,還需要一步。

再次觀察頁面請求中,視頻加載后會有個1.flv請求,然后在視頻播放過程中會有N個1.flv的請求。查看它的請求url:


前面一段是我們從接口中得到的video_url, 而后面的部分,應該是視頻的分段,我們這里把start改為0,end改為17178430(這個值是xml的video的length,也就是視頻總大小),然后在瀏覽器上訪問一下修改后的地址,便會直接下載到了真實完整的視頻了。

對于視頻信息接口請求時的vid=40565937中的vid,其實就是swf的文件名,它也在頁面源碼中。。。
==============================================
以上只是視頻為flv格式的, 我在找其它頁面測試時發(fā)現(xiàn)還有m3u8的,以這個商品為例:

https://detail.tmall.com/item.htm?id=555589089023

視頻信息info.php接口返回如下:


0
false
82
taobao
c6mJEWnLQy4CARvfBXa1h111http://img.alicdn.com/imgextra/i4/6000000001985/TB2gSE.cbMlyKJjSZFlXXbMoFXa_%21%210-0-tbvideo.jpg2false
truexxxxxxxx1234567890




50014606214
false
true


videos中也是根據(jù)清晰度不同分為三個不同的地址,拿到這個地址后,可以直接交給ffmpeg轉換成mp4。

ffmpeg -i "http://tbm.alicdn.com/F1wX39ZOFUNTIGmZVa7/TqhK5AMFlq6HNa9Cl2r%40%40hd.m3u8" -vcodec copy -acodec copy -absf aac_adtstoasc output.mp4

? ? ? ?

本文采用知識共享署名-非商業(yè)性使用 3.0 中國大陸許可協(xié)議進行許可,轉載時請注明出處及相應鏈接。

本文永久鏈接: http://www.yjfs.org.cn/tmall-goods-video-download.html

天貓商品詳情頁視頻的下載的思路:目前有4 條留言

用戶評論頭像 小青發(fā)表于 2017年11月09日 22:33[回復]

不錯,博主有心了。

    用戶評論頭像 小白發(fā)表于 2017年11月09日 23:00[回復]

    不錯,博主有心了。

      用戶評論頭像 anni發(fā)表于 2017年11月09日 23:03[回復]

      這個具體要怎么操作呢

        用戶評論頭像 爸爸的爸爸叫什么發(fā)表于 2018年01月08日 10:51[回復]

        牛逼

發(fā)表評論

change vcode