背景
昨天一個曾經暗戀的高中同學,她突然找到我說,要去美國深造,原來是因為去美國在飛機上時間特別長,平時是個抖音迷,一天不刷抖音就沒法活,考慮到去美國的飛機上沒有網絡,又想刷抖音,看我平時經常看見我分享技術相關,所以問了下我,有沒辦法,可以正常滿足她刷抖音,這TM,都是別人家媳婦了,我本來不想搭理的。但是看在曾經暗戀過她,人家又要出國了,這個小小的願望那自然要滿足。
於是我第一想到就是用Python爬蟲下載抖音視頻,前人栽樹,後人乘涼,先去github看是否有前輩做過類似的事情,果然,讓我發現了一個強大的神器。amemv-crawler,這是一個基於Python的腳本,配置運行後可以下載指定抖音用戶的全部視頻(含收藏),也可以下載指定主題(挑戰)或音樂下的全部視頻。把抖音視頻存到手機裡,即使在沒有網的地方也能暢快地刷起來。
環境安裝
配置好你的Python、node環境,然後pip install requests.
或者
<code>$ git clone https://github.com/loadchange/amemv-crawler.git
$ cd amemv-crawler
$ pip install -r requirements.txt/<code>
大功告成,直接跳到下一節配置和運行.
配置和運行
有兩種方式來指定你要下載的抖音號分享鏈接,一是編輯share-url.txt,二是指定命令行參數.
第一種方法:編輯share-url.txt文件
找到一個文字編輯器,然後打開文件share-url.txt,把你想要下載的抖音號分享鏈接編輯進去,以逗號/空格/tab/表格鍵/回車符分隔,可以多行.例如, 這個文件看起來是這樣的:
<code>https://www.douyin.com/share/user/85860189461?share_type=link&tt_from=weixin&utm_source=weixin&utm_medium=aweme_ios&utm_campaign=client_share&uid=97193379950&did=30337873848,
https://www.iesdouyin.com/share/challenge/1593608573838339?utm_campaign=clien,
https://www.iesdouyin.com/share/music/6536362398318922509?utm_campaign=client_share&app=aweme&utm_medium=ios&iid=30337873848&utm_source=copy/<code>
獲取用戶分享鏈接的方法(挑戰、音樂 類似)
然後保存文件,雙擊運行amemv-video-ripper.py或者在終端(terminal)裡面
運行python amemv-video-ripper.py
第二種方法:使用命令行參數(僅針對會使用操作系統終端的用戶)
如果你對Windows或者Unix系統的命令行很熟悉,你可以通過指定運行時的命令行參數來指定要下載的站點:
某些平臺下注意給URL增加引號
<code>python amemv-video-ripper.py --url URL1,URL2/<code>
分享鏈接以逗號分隔,不要有空格.
如果是用戶URL默認不下載喜歡列表,需要增加 --favorite
<code>python amemv-video-ripper.py --url URL --favorite/<code>
視頻的下載與保存
程序運行後,會默認在當前路徑下面生成一個跟抖音ID名字相同的文件夾,
視頻都會放在這個文件夾下面.
運行這個腳本,不會重複下載已經下載過的視頻,所以不用擔心重複下載的問題.同時,多次運行可以
幫你找回丟失的或者刪除的視頻.
然後重新運行下載命令.
高級應用
如果你想下載整個挑戰主題,請在 share-url.txt 文件中添加 挑戰的分享URL
如下: 既為抖音號、挑戰主題和音樂的三種爬蟲方式,需要注意的是,爬蟲只對搜索結果第一的結果進行下載,所以請儘量完整的寫出你的 主題或音樂名稱。
<code>https://www.douyin.com/share/user/85860189461?share_type=link&tt_from=weixin&utm_source=weixin&utm_medium=aweme_ios&utm_campaign=client_share&uid=97193379950&did=30337873848,
https://www.iesdouyin.com/share/challenge/1593608573838339?utm_campaign=clien,
https://www.iesdouyin.com/share/music/6536362398318922509?utm_campaign=client_share&app=aweme&utm_medium=ios&iid=30337873848&utm_source=copy/<code>
短地址的情況
<code>http://v.douyin.com/cDo2P/,
http://v.douyin.com/cFuAN/,
http://v.douyin.com/cMdjU//<code>
那問題來了,總不能讓暗戀的高中同學去學個Python,然後去執行這些代碼吧,所以我最終把下載下來的視頻打包放到了網盤,讓她去下載,大功告成。
閱讀更多 地表嘴強程序員 的文章