水印批量下載工具 douyin-downloader 快速上手完整指南)
抖音無(wú)水印批量下載工具 douyin-downloader 快速上手完整指南【免費(fèi)下載鏈接】douyin-downloaderA practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback support. 抖音批量下載工具去水印支持視頻、圖集、合集、音樂(lè)(原聲)。項(xiàng)目地址: https://gitcode.com/GitHub_Trending/do/douyin-downloader第一次用 douyin-downloader 時(shí)我只想保存一位美食博主最近發(fā)的 30 個(gè)視頻。手動(dòng)錄屏有平臺(tái)水印在線解析網(wǎng)站畫質(zhì)壓得一塌糊涂一個(gè)個(gè)右鍵保存更是折磨。抱著試試看的心態(tài)敲下python run.py -c config.yml十幾分鐘后Downloaded文件夾里整整齊齊躺著 30 個(gè)無(wú)水印原畫質(zhì)視頻、30 張封面和 30 段原聲。這篇文章記錄的就是我從零上手這款開(kāi)源工具的完整過(guò)程覆蓋安裝、配置、進(jìn)階玩法和踩坑修復(fù)照著做你也能跑通。30 秒看懂它能做什么適合誰(shuí)douyin-downloader 是一款面向?qū)嵱脠?chǎng)景的抖音下載工具核心能力是去水印批量下載支持視頻、圖文、合集、音樂(lè)原聲、作者主頁(yè)、收藏夾等多種內(nèi)容類型并自帶進(jìn)度展示、失敗重試、SQLite 去重和瀏覽器兜底。能力說(shuō)明適合誰(shuí)單個(gè)視頻/圖文/合集/音樂(lè)下載粘貼鏈接即下自動(dòng)選無(wú)水印高清源普通用戶隨手收藏作者主頁(yè)批量下載一次拉取發(fā)布、點(diǎn)贊、合集、音樂(lè)作品追更博主、素材收集者收藏夾下載下載當(dāng)前登錄賬號(hào)收藏的作品與合集重度用戶直播錄制解析直播流FLV 保存下播保留已錄數(shù)據(jù)直播回放收藏評(píng)論采集 / 熱搜 / 搜索導(dǎo)出評(píng)論 JSON、熱搜榜 JSONL、關(guān)鍵詞搜索數(shù)據(jù)分析愛(ài)好者REST API 服務(wù)模式把下載能力封裝成 HTTP 接口二次開(kāi)發(fā)者項(xiàng)目同時(shí)維護(hù)著兩套入口根目錄的DouYinCommand.pyV1.0 穩(wěn)定版單視頻下載最穩(wěn)和douyin-downloader/目錄下的run.py功能最全的重構(gòu)版。后面我會(huì)先講兩條最快路徑再分層遞進(jìn)講配置。最快跑通兩條路選一條五分鐘看到第一個(gè)視頻落地路徑 AV1.0 穩(wěn)定版三步下載單個(gè)視頻# 1. 安裝依賴 pip install -r requirements.txt這一步把 aiohttp、pyyaml 等核心依賴裝進(jìn)當(dāng)前 Python 環(huán)境是后續(xù)所有命令的前提。# 2. 復(fù)制配置模板并編輯 link 與 path cp config.example.yml config.yml# 3. 運(yùn)行默認(rèn)讀取當(dāng)前目錄 config.yml python DouYinCommand.py把config.yml里link換成你的視頻分享短鏈程序會(huì)自動(dòng)解析短鏈、抓取無(wú)水印地址并下載到path指定目錄。整個(gè)流程全自動(dòng)幾秒完成下載。路徑 B重構(gòu)版 run.py一條命令下載作者主頁(yè)# 在 douyin-downloader/ 目錄下 pip install -r requirements.txt cp config.example.yml config.yml python run.py -c config.ymlrun.py是重構(gòu)版主入口-c指定配置文件。它聚合了批量、去重、重試、瀏覽器兜底等全部能力適合作為長(zhǎng)期主力工具。無(wú)論走哪條路你都會(huì)在控制臺(tái)看到類似的進(jìn)度輸出成功 1/1、用時(shí)、保存路徑一清二楚。第一步配置Cookie 的三種獲取方式抖音需要登錄態(tài)才能訪問(wèn)內(nèi)容Cookie 是運(yùn)行前提。config.example.yml里寫了三種方式按優(yōu)先級(jí)從上到下# 方式一自動(dòng)獲取推薦需要 Playwright cookies: auto # 方式二直接粘貼整串 Cookie # cookies: msTokenxxx; ttwidxxx; odin_ttxxx; ... # 方式三鍵值對(duì)逐項(xiàng)填寫 # cookies: # msToken: xxx # ttwid: xxx # sid_guard: xxx方式一最省事前提是先裝 Playwrightpip install playwright python -m playwright install chromium然后用項(xiàng)目自帶的抓取腳本掃碼登錄后自動(dòng)寫入配置python -m tools.cookie_fetcher --config config.yml登錄抖音網(wǎng)頁(yè)版后回到終端按 EnterCookie 自動(dòng)落到配置文件里無(wú)需手動(dòng)復(fù)制粘貼。方式二、方式三適合你手里已經(jīng)有一串有效 Cookie 的情況注意三選一不要同時(shí)保留。進(jìn)階闖關(guān)從新手到高手的配置遞進(jìn)新手關(guān)改三個(gè)字段先跑起來(lái)link: - https://www.douyin.com/video/7604129988555574538 path: ./Downloaded/ music: true # 下載背景音樂(lè) cover: true # 下載封面 json: true # 保存元數(shù)據(jù) JSON這段配置定義了下載什么、存到哪、附帶哪些資源。music、cover、json默認(rèn)都是true不想存可以改成false。進(jìn)階關(guān)批量與去重作者主頁(yè)批量下載是高頻場(chǎng)景配置mode指定內(nèi)容類型number限制數(shù)量link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx mode: - post # 發(fā)布作品還可寫 like(點(diǎn)贊)/mix(合集)/music(音樂(lè)) number: post: 50 # 最多 50 個(gè)0 表示全量配合database: true啟用 SQLite 去重后重復(fù)運(yùn)行同一配置只會(huì)補(bǔ)下新增內(nèi)容。再加一句增量開(kāi)關(guān)就能做到只下載新作品increase: post: true database: true # 增量模式依賴數(shù)據(jù)庫(kù)記錄高手關(guān)時(shí)間過(guò)濾、命名模板與瀏覽器兜底長(zhǎng)時(shí)間掛機(jī)收集素材時(shí)建議用時(shí)間過(guò)濾框定范圍避免把三年老內(nèi)容全拉下來(lái)start_time: 2024-01-01 end_time: 2024-12-31下載后的文件名可以完全自定義模板變量包括{id}{title}{author}{date}{year}{month}{day}{time}{type}{mode}filename_template: {date}_{title}_{id} folder_template: {date}_{title}_{id} author_dir: nickname # 作者目錄命名可選 nickname/sec_uid/nickname_uid注意模板里至少要保留{id}否則重名作品會(huì)互相覆蓋。當(dāng) API 翻頁(yè)被風(fēng)控、只抓到 20 條時(shí)瀏覽器兜底會(huì)啟動(dòng)真實(shí)瀏覽器幫你繼續(xù)翻頁(yè)browser_fallback: enabled: true headless: false # 彈窗出現(xiàn)后手動(dòng)完成驗(yàn)證別急著關(guān)窗口 max_scrolls: 240實(shí)戰(zhàn)演練三個(gè)真實(shí)場(chǎng)景的完整配置場(chǎng)景一追更博主主頁(yè)全量備份把一位創(chuàng)作者的發(fā)布、點(diǎn)贊、合集、音樂(lè)一次拉全跨模式自動(dòng)按aweme_id去重不會(huì)重復(fù)下載link: - https://www.douyin.com/user/MS4wLjABAAAAxxxx mode: - post - like - mix - music number: post: 0 like: 0 mix: 0 music: 0 path: ./博主備份/下載完你會(huì)得到一個(gè)按作者、按內(nèi)容類型分層的目錄結(jié)構(gòu)視頻、封面、音樂(lè)、元數(shù)據(jù) JSON 各歸其位Downloaded/ └── 博主名/ └── post/ └── 2024-02-07_作品標(biāo)題_aweme_id/ ├── ...mp4 ├── ..._cover.jpg ├── ..._music.mp3 └── ..._data.json場(chǎng)景二直播間回放錄制把直播鏈接放進(jìn)link程序自動(dòng)解析直播流并給出清晰度選項(xiàng)python DouYinCommand.py -l https://live.douyin.com/123456789 -p ./直播存檔-l傳直播鏈接-p指定存檔目錄。錄制參數(shù)可在配置里微調(diào)主播下播、網(wǎng)絡(luò)空閑或手動(dòng)中斷時(shí)已錄制的字節(jié)都會(huì)被保留為正式文件link: - https://live.douyin.com/123456789 live: max_duration_seconds: 0 # 0 錄到主播下播 idle_timeout_seconds: 30場(chǎng)景三數(shù)據(jù)分析熱搜榜與關(guān)鍵詞搜索做內(nèi)容趨勢(shì)分析時(shí)不需要下載視頻本體只要結(jié)構(gòu)化數(shù)據(jù)。run.py提供了兩個(gè)輕量出口# 拉取熱搜榜前 30 條導(dǎo)出 JSONL python run.py --hot-board 30 -p ./Downloaded # 關(guān)鍵詞搜索貓咪最多 100 條導(dǎo)出 JSONL python run.py --search 貓咪 --search-max 100 -p ./Downloaded結(jié)果分別落在Downloaded/hot_board/和Downloaded/search/下每條含標(biāo)題、熱度等元數(shù)據(jù)可直接進(jìn) pandas 處理。更進(jìn)階的做法是開(kāi)啟comments.enabled采集評(píng)論每個(gè)作品會(huì)額外生成*_comments.json點(diǎn)贊數(shù)、評(píng)論內(nèi)容、二級(jí)回復(fù)都在里面適合做用戶反饋分析。避坑手冊(cè)五個(gè)高頻問(wèn)題一次講清問(wèn)只能抓到 20 條作品翻頁(yè)就沒(méi)了排查這是翻頁(yè)風(fēng)控的典型表現(xiàn)。解決確認(rèn)browser_fallback.enabled: true且headless: false瀏覽器彈窗出現(xiàn)后手動(dòng)完成驗(yàn)證碼不要立即關(guān)閉窗口。問(wèn)Cookie 失效下載全部報(bào)錯(cuò)排查控制臺(tái)會(huì)出現(xiàn)登錄相關(guān)的錯(cuò)誤日志。解決重新執(zhí)行python -m tools.cookie_fetcher --config config.yml掃碼刷新幾秒即可恢復(fù)。問(wèn)進(jìn)度條刷屏日志被淹沒(méi)排查進(jìn)度階段默認(rèn)會(huì)打印大量行。解決配置里progress.quiet_logs: true即可靜默進(jìn)度日志需要調(diào)試時(shí)再加--show-warnings或-v臨時(shí)打開(kāi)。問(wèn)想重新下載某個(gè)作品但它被跳過(guò)了排查程序通過(guò)數(shù)據(jù)庫(kù)記錄 本地文件雙重檢查判斷是否已下載只刪數(shù)據(jù)庫(kù)不刪文件不會(huì)觸發(fā)重下。解決同時(shí)清理對(duì)應(yīng) aweme_id 的本地目錄和數(shù)據(jù)庫(kù)記錄sqlite3 dy_downloader.db DELETE FROM aweme WHERE aweme_id aweme_id;先刪掉Downloaded/作者名/post/*_aweme_id/目錄再刪數(shù)據(jù)庫(kù)行。問(wèn)下載很慢怎么辦排查默認(rèn)并發(fā) 5、默認(rèn)速率限制 2 請(qǐng)求/秒慢通常是網(wǎng)絡(luò)或線程數(shù)問(wèn)題。解決在配置里調(diào)thread: 8視機(jī)器配置而定或給proxy填上代理地址如http://127.0.0.1:7890。收尾照著這份行動(dòng)清單走完克隆倉(cāng)庫(kù)git clone https://gitcode.com/GitHub_Trending/do/douyin-downloader進(jìn)入目錄裝依賴pip install -r requirements.txt需要自動(dòng) Cookie 時(shí)再加裝 Playwright配 Cookie運(yùn)行python -m tools.cookie_fetcher --config config.yml掃碼登錄跑最小用例python DouYinCommand.py或python run.py -c config.yml先驗(yàn)證單視頻下載按需進(jìn)階從進(jìn)階闖關(guān)和實(shí)戰(zhàn)演練里挑一個(gè)場(chǎng)景配置抄進(jìn)config.yml定期維護(hù)Cookie 失效就重跑抓取腳本升級(jí)代碼前備份config.yml與數(shù)據(jù)庫(kù)文件最后提醒一句工具本身開(kāi)源免費(fèi)但請(qǐng)尊重原創(chuàng)內(nèi)容版權(quán)僅在個(gè)人學(xué)習(xí)、研究或合理使用范圍內(nèi)使用下載內(nèi)容并留意平臺(tái)規(guī)則與接口策略的變更。項(xiàng)目地址https://gitcode.com/GitHub_Trending/do/douyin-downloader開(kāi)源協(xié)議MIT License適用平臺(tái)Windows / macOS / Linux依賴環(huán)境Python 3.8另有可選依賴 Playwright、fastapi uvicorn【免費(fèi)下載鏈接】douyin-downloaderA practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback support. 抖音批量下載工具去水印支持視頻、圖集、合集、音樂(lè)(原聲)。項(xiàng)目地址: https://gitcode.com/GitHub_Trending/do/douyin-downloader創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考