@clawhub-heihu123-02de4c250e
使用yt-dlp和ffmpeg下载各种网站的视频。支持YouTube、B站、抖音等所有yt-dlp支持的网站。当用户要求下载视频、保存视频、抓取视频时调用此技能。
---
name: "视频下载器"
description: "使用yt-dlp和ffmpeg下载各种网站的视频。支持YouTube、B站、抖音等所有yt-dlp支持的网站。当用户要求下载视频、保存视频、抓取视频时调用此技能。"
---
# 视频下载器
使用yt-dlp和ffmpeg下载各种网站的视频,支持所有yt-dlp支持的网站。
## 功能特点
- 支持所有yt-dlp支持的网站(YouTube、B站、抖音、快手、Instagram、Twitter等)
- 自动下载并合并视频和音频流
- 默认下载1080p MP4格式
- 自动安装和更新yt-dlp
- 自动检测和使用ffmpeg进行视频合并
## 快速开始
最简单的下载方式:
```bash
python download_video.py "视频URL"
```
这会下载视频到用户下载目录(`~/Downloads`),文件名使用视频标题。
技能会自动:
- 下载并设置ffmpeg(如果未安装)
- 检查并安装yt-dlp(如果未安装)
- 合并视频和音频流
## 选项
### 质量设置
使用`-q`或`--quality`指定视频质量:
- `best`:最高质量
- `1080p`:全高清(默认)
- `720p`:高清
- `480p`:标清
- `360p`:较低质量
示例:
```bash
python download_video.py "URL" -q 1080p
```
### 格式选项
指定输出格式:
- `mp4`(默认):最兼容的格式
- `webm`:现代格式
- `mkv`:Matroska容器
示例:
```bash
python download_video.py "URL" -q 1080p
```
### 只下载音频
使用`-a`或`--audio-only`只下载音频:
```bash
python download_video.py "URL" -a
```
### 自定义输出目录
使用`-o`或`--output`指定输出目录:
```bash
python download_video.py "URL" -o "D:/Videos"
```
## 完整示例
1. 下载1080p MP4视频到用户下载目录:
```bash
python download_video.py "https://www.youtube.com/watch?v=VIDEO_ID"
```
2. 下载B站视频:
```bash
python download_video.py "https://www.bilibili.com/video/BV..."
```
3. 只下载音频为MP3:
```bash
python download_video.py "URL" -a
```
4. 下载720p视频:
```bash
python download_video.py "URL" -q 720p
```
5. 下载到指定目录:
```bash
python download_video.py "URL" -o "D:/Videos"
```
## 工作原理
技能使用`yt-dlp`和`ffmpeg`:
- 自动下载并设置ffmpeg(如果未安装)
- 自动检查并安装yt-dlp(如果未安装)
- 获取视频信息
- 选择最佳的视频和音频流
- 使用内置ffmpeg合并视频和音频流
- 支持广泛的视频网站和格式
## 重要说明
- 默认下载到用户下载目录:`~/Downloads`
- 视频文件名自动从视频标题生成
- ffmpeg会自动下载到技能目录(`.trae/skills/视频下载器/ffmpeg/`)
- 较高质量的视频可能需要更长的下载时间和更多磁盘空间
- 某些网站可能需要使用浏览器cookies进行认证
## 使用浏览器cookies(可选)
对于需要登录的视频,可以使用浏览器cookies:
```bash
yt-dlp "URL" --cookies-from-browser chrome
yt-dlp "URL" --cookies-from-browser edge
yt-dlp "URL" --cookies-from-browser firefox
```
## 常见问题
1. **403 Forbidden错误**:YouTube等网站的反爬虫机制,可以尝试:
- 更新yt-dlp:`pip install --upgrade yt-dlp`
- 使用浏览器cookies
- 筭待一段时间后重试
2. **视频质量不理想**:尝试使用不同的格式选择器或使用浏览器cookies
3. **ffmpeg下载失败**:如果自动下载ffmpeg失败,可以手动下载并解压到技能目录的`ffmpeg/`文件夹
FILE:download_video.py
#!/usr/bin/env python3
import os
import sys
import subprocess
import platform
import urllib.request
import zipfile
import shutil
from pathlib import Path
SCRIPT_DIR = Path(__file__).parent
FFMPEG_DIR = SCRIPT_DIR / "ffmpeg"
if platform.system() == "Windows":
FFMPEG_EXE = FFMPEG_DIR / "bin" / "ffmpeg.exe"
else:
FFMPEG_EXE = FFMPEG_DIR / "bin" / "ffmpeg"
OUTPUT_DIR = Path.home() / "Downloads"
def setup_ffmpeg():
"""Download and setup ffmpeg if not already installed"""
if FFMPEG_EXE.exists():
print(f"FFmpeg already installed at: {FFMPEG_EXE}")
return str(FFMPEG_EXE)
print("Downloading FFmpeg...")
if platform.system() == "Windows":
url = "https://www.gyan.dev/ffmpeg/builds/ffmpeg-release-essentials.zip"
zip_file = Path(os.environ.get("TEMP", "/tmp")) / "ffmpeg.zip"
try:
urllib.request.urlretrieve(url, zip_file)
print("Extracting FFmpeg...")
with zipfile.ZipFile(zip_file, 'r') as zip_ref:
zip_ref.extractall(zip_file.parent)
extracted_dirs = [d for d in zip_file.parent.iterdir() if d.is_dir() and d.name.startswith("ffmpeg-")]
if extracted_dirs:
extracted_dir = extracted_dirs[0]
FFMPEG_DIR.mkdir(parents=True, exist_ok=True)
for item in extracted_dir.iterdir():
dest = FFMPEG_DIR / item.name
if dest.exists():
if dest.is_dir():
shutil.rmtree(dest)
else:
dest.unlink()
shutil.move(str(item), str(dest))
print(f"FFmpeg installed successfully at: {FFMPEG_EXE}")
return str(FFMPEG_EXE)
else:
print("Error: Could not find extracted FFmpeg directory")
sys.exit(1)
finally:
if zip_file.exists():
zip_file.unlink()
else:
print("Auto-installation not supported on this platform. Please install FFmpeg manually.")
print("Visit: https://ffmpeg.org/download.html")
sys.exit(1)
def check_ytdlp():
"""Check if yt-dlp is installed, if not, install it"""
try:
subprocess.run(["yt-dlp", "--version"], capture_output=True, check=True)
print("yt-dlp is already installed")
except (subprocess.CalledProcessError, FileNotFoundError):
print("Installing yt-dlp...")
subprocess.run([sys.executable, "-m", "pip", "install", "--upgrade", "yt-dlp"], check=True)
print("yt-dlp installed successfully")
def download_video(url, quality="1080p", output_dir=None, audio_only=False):
"""Download video using yt-dlp"""
ffmpeg_path = setup_ffmpeg()
check_ytdlp()
if output_dir is None:
output_dir = OUTPUT_DIR
output_dir = Path(output_dir)
output_dir.mkdir(parents=True, exist_ok=True)
output_template = str(output_dir / "%(title)s.%(ext)s")
cmd = ["yt-dlp", url, "-o", output_template]
if audio_only:
cmd.extend(["--extract-audio", "--audio-format", "mp3"])
else:
if quality == "best":
format_selector = "bestvideo+bestaudio/best"
elif quality == "1080p":
format_selector = "bestvideo[height<=1080]+bestaudio/best[height<=1080]/best"
elif quality == "720p":
format_selector = "bestvideo[height<=720]+bestaudio/best[height<=720]/best"
elif quality == "480p":
format_selector = "bestvideo[height<=480]+bestaudio/best[height<=480]/best"
elif quality == "360p":
format_selector = "bestvideo[height<=360]+bestaudio/best[height<=360]/best"
else:
format_selector = "best"
cmd.extend(["-f", format_selector, "--merge-output-format", "mp4"])
cmd.extend(["--ffmpeg-location", ffmpeg_path])
print(f"Downloading video: {url}")
print(f"Quality: {quality}")
print(f"Output directory: {output_dir}")
subprocess.run(cmd, check=True)
print("Download completed!")
def main():
if len(sys.argv) < 2:
print("Usage: python download_video.py <URL> [options]")
print("\nOptions:")
print(" -q, --quality <quality> Video quality (best, 1080p, 720p, 480p, 360p) [default: 1080p]")
print(" -o, --output <dir> Output directory [default: ~/Downloads]")
print(" -a, --audio-only Download audio only as MP3")
print("\nExamples:")
print(' python download_video.py "https://www.youtube.com/watch?v=VIDEO_ID"')
print(' python download_video.py "https://www.youtube.com/watch?v=VIDEO_ID" -q 720p')
print(' python download_video.py "https://www.youtube.com/watch?v=VIDEO_ID" -o "D:/Videos"')
print(' python download_video.py "https://www.youtube.com/watch?v=VIDEO_ID" -a')
sys.exit(1)
url = sys.argv[1]
quality = "1080p"
output_dir = None
audio_only = False
i = 2
while i < len(sys.argv):
if sys.argv[i] in ["-q", "--quality"]:
quality = sys.argv[i + 1]
i += 2
elif sys.argv[i] in ["-o", "--output"]:
output_dir = sys.argv[i + 1]
i += 2
elif sys.argv[i] in ["-a", "--audio-only"]:
audio_only = True
i += 1
else:
i += 1
download_video(url, quality, output_dir, audio_only)
if __name__ == "__main__":
main()
自动获取站酷(ZCOOL)首页热门设计作品(带链接、分类、亮点描述、趋势统计)
---
name: zcool-daily
description: 自动获取站酷(ZCOOL)首页热门设计作品(带链接、分类、亮点描述、趋势统计)
---
# 站酷每日热门作品推荐
## 功能说明
获取站酷(ZCOOL)首页的热门设计作品,输出格式:
- 标题带链接(可点击查看详情)
- 作品类型分类(AI绘画、插画、3D、动画、品牌设计等)
- 自动生成亮点描述
- 趋势统计(当日类型分布)
## 输出格式示例
详见 `references/output-example.md`
```bash
# 查看示例
cat references/output-example.md
```
## 亮点描述规则
- 针对热门作品标题有专门优化
- 根据关键词匹配自动生成
- 每个类型有默认描述作为兜底
## 使用方法
```bash
python3 scripts/zcool_daily.py --mode list
```
## 输出文件
作品列表保存至:`zcool_daily/zcool_{date}.txt`
## 依赖
- Python 3
- requests
- beautifulsoup4
安装:
```bash
pip install requests beautifulsoup4
```
## 支持的类型分类
AI绘画、插画、品牌设计、UI/UX、3D、动画、游戏、摄影、海报、手办、汽车/工业、电商、视频/MV
FILE:zcool_daily/zcool_2026-03-20.txt
📢 2026年03月20日 站酷热门设计作品推荐:
1. ✨ [下雪的城市_孙无力-站酷ZCOOL](https://www.zcool.com.cn/work/ZNzMyNDgwNTY=.html?utm_source=zcool&utm_medium=index&utm_campaign=banner07)
🏷️ 类型:其他 | 🌟 温馨雪景插画,氛围感拉满
2. ✨ [原创绘本《帽子镇99号》_Simon小火-站酷ZCOOL](https://www.zcool.com.cn/work/ZNzMyODA5MjA=.html?utm_source=zcool&utm_medium=index&utm_campaign=banner08)
🏷️ 类型:其他 | 🌟 充满想象力的原创绘本角色设计
3. 📛 [GOOD TIME TEA 新中式茶饮品牌设计_伊昂杨杨杨杨杨-站酷ZCOOL](https://www.zcool.com.cn/work/ZNzI5NDc4NDA=.html?utm_source=zcool&utm_medium=index&utm_campaign=banner05)
🏷️ 类型:品牌设计 | 🌟 新中式茶饮视觉系统,质感出众
4. 🎵 [你从没见过的神曲《大唐Gang》MV_BIG王0911-站酷ZCOOL](https://www.zcool.com.cn/work/ZNzMyNTEwNTI=.html?utm_source=zcool&utm_medium=index&utm_campaign=banner06)
🏷️ 类型:视频/MV | 🌟 国风说唱 MV,视觉冲击力强
5. 🎬 [云顶之弈神拳不朽李青CG:东方武学的禅意与力量碰撞_两点十分动漫-站酷ZCOOL](https://www.zcool.com.cn/work/ZNzMzMjg5MDQ=.html)
🏷️ 类型:动画 | 🌟 东方武学风格游戏 CG,武侠氛围浓厚
6. 🧊 [小牛电动车产品渲染 & 产品站设计_葡萄创意-站酷ZCOOL](https://www.zcool.com.cn/work/ZNzMzMzAyOTI=.html)
🏷️ 类型:3D | 🌟 产品级 3D 渲染,细节精致
7. 🎵 [<萤火>《剑与远征启程_九尾pv》_萤火MicroFire-站酷ZCOOL](https://www.zcool.com.cn/work/ZNzMzMzUzMjQ=.html)
🏷️ 类型:视频/MV | 🌟 游戏角色动画 PV,特效炸裂
8. 🧊 [Illustration to 3D conversion_鹿言-站酷ZCOOL](https://www.zcool.com.cn/work/ZNzMzMzQwNzY=.html)
🏷️ 类型:3D | 🌟 2D 转 3D 风格转换,视觉效果惊艳
9. ✨ [身体与水_约翰强尼-站酷ZCOOL](https://www.zcool.com.cn/work/ZNzMzMTQ0NzY=.html)
🏷️ 类型:其他 | 🌟 充满意象的创意插画作品
10. 🎨 [2025为三联《少年》绘制的一些文章插画_Danton丹彤-站酷ZCOOL](https://www.zcool.com.cn/work/ZNzMzMzQzODQ=.html)
🏷️ 类型:插画 | 🌟 杂志文章配图,风格清新细腻
---
📊 今日趋势:**其他(3) | 视频/MV(2) | 3D(2) | 品牌设计(1) | 动画(1) | 插画(1)**
FILE:scripts/zcool_daily.py
#!/usr/bin/env python3
"""
站酷每日热门作品推荐脚本
使用方式:
python3 zcool_daily.py --mode list # 获取作品列表
"""
import requests
from bs4 import BeautifulSoup
import time
import os
import json
import sys
import argparse
from datetime import datetime
from pathlib import Path
# 获取脚本所在目录
SCRIPT_DIR = Path(__file__).parent
# 分类关键词
CATEGORY_KEYWORDS = {
"AI绘画": ["AI", "AIGC", "Midjourney", "Stable Diffusion", "SD", "MJ", "人工智能", "生成式"],
"插画": ["插画", "绘制", "儿插", "商业插画", "人物", "场景"],
"品牌设计": ["品牌", "VI", "Logo", "标志", "包装", "IP", "Identity"],
"UI/UX": ["UI", "UX", "界面", "交互", "App", "小程序", "Web"],
"3D": ["3D", "C4D", "Blender", "建模", "渲染", "三维"],
"动画": ["动画", "Motion", "动效", "Live2D", "MG", "逐帧"],
"游戏": ["游戏", "原画", "角色", "场景", "概念"],
"摄影": ["摄影", "拍摄", "写真", "人像"],
"海报": ["海报", "Poster", "视觉", "宣传"],
"手办": ["手办", "雕像", "GK", "BJD", "ARTISAN"],
"汽车/工业": ["汽车", "工业", "产品", "交通工具"],
"电商": ["电商", "详情页", "主图"],
}
def classify_work(title, description):
"""作品分类"""
text = (title + " " + (description or "")).upper()
for category, keywords in CATEGORY_KEYWORDS.items():
for keyword in keywords:
if keyword.upper() in text:
return category
if "山海" in title or "神话" in title:
return "插画"
# 视频/MV 检测
if any(k in title.lower() for k in ['mv', '视频', 'video', 'pv', '动画']):
return "视频/MV"
return "其他"
def generate_highlight(title, description, category):
"""根据作品信息生成详细亮点描述"""
text = (title + " " + (description or "")).lower()
title_only = title.lower()
# 针对具体作品标题生成详细亮点
# 下雪的城市
if "雪" in title:
return "温馨雪景插画,氛围感拉满"
# 绘本/帽子镇
if "绘本" in title or "帽子镇" in title:
return "充满想象力的原创绘本角色设计"
# 茶饮品牌
if "茶" in title or "品牌" in title:
return "新中式茶饮视觉系统,质感出众"
# MV/大唐Gang
if "mv" in title_only or "大唐" in title:
return "国风说唱 MV,视觉冲击力强"
# 云顶之弈/李青
if "云顶" in title or "李青" in title:
return "东方武学风格游戏 CG,武侠氛围浓厚"
# 电动车/产品渲染
if "电动车" in title or "产品渲染" in title:
return "产品级 3D 渲染,细节精致"
# 剑与远征/九尾
if "剑与远征" in title or "九尾" in title:
return "游戏角色动画 PV,特效炸裂"
# 2D转3D
if "3d conversion" in title_only or "2d" in title_only:
return "2D 转 3D 风格转换,视觉效果惊艳"
# 身体与水
if "身体" in title or "水" in title:
return "充满意象的创意插画作品"
# 杂志插画/少年
if "少年" in title or "文章插画" in title:
return "杂志文章配图,风格清新细腻"
# AI 相关
if any(k in text for k in ['ai', 'aigc', 'midjourney', 'mj', 'sd', 'stable diffusion', 'dall', '生成式', '人工智能']):
return "AI 生成艺术作品"
# 3D 相关
if any(k in text for k in ['3d', 'c4d', 'blender', '建模', '渲染', '三维', 'octane', 'redshift']):
return "3D 建模与渲染作品"
# 动态/视频
if any(k in text for k in ['动画', 'motion', '动效', 'live2d', 'mg', 'video', '视频', 'pv', 'cg']):
return "动画/视频制作"
# 品牌设计
if any(k in text for k in ['品牌', 'logo', 'vi', '标志', '包装', 'ip', 'identity', '视觉']):
return "品牌视觉设计系统"
# 插画/手绘
if any(k in text for k in ['插画', '绘制', '儿插', '手绘', '原画']):
return "精美插画作品"
# 国风/传统
if any(k in text for k in ['国风', '传统', '中国', '大唐', '东方', '神话', '山海']):
return "国风美学设计"
# 游戏
if any(k in text for k in ['游戏', '原画', '概念']):
return "游戏美术设计"
# 默认描述
default_highlights = {
"插画": "精美插画作品",
"AI绘画": "AI 生成艺术",
"3D": "3D 渲染作品",
"动画": "动态视觉效果",
"品牌设计": "品牌视觉设计",
"UI/UX": "界面设计方案",
"游戏": "游戏美术作品",
"海报": "创意海报设计",
"摄影": "摄影作品",
"手办": "手办模型制作",
"汽车/工业": "工业设计方案",
"电商": "电商视觉设计",
"视频/MV": "视频/MV作品",
"其他": "精彩设计作品"
}
return default_highlights.get(category, "精彩设计作品")
def extract_author(title):
"""提取作者名"""
title = title.replace('_站酷ZCOOL', '').replace('-站酷ZCOOL', '')
if "_" in title and "-" in title:
parts = title.split("_")
author = parts[-1].split("-")[0].strip()
if author and author != "站酷ZCOOL":
return author
if "-" in title:
parts = title.split("-")
author = parts[-1].strip()
if author and author != "站酷ZCOOL":
return author
return None
def extract_description(html):
"""提取作品描述"""
soup = BeautifulSoup(html, 'html.parser')
meta_desc = soup.find('meta', {'name': 'description'})
if meta_desc:
desc = meta_desc.get('content', '').strip()
if '站酷聚集了1800万' in desc:
desc = desc[:desc.find('站酷聚集了1800万')].strip()
return desc[:200] if desc else ""
return ""
def fetch_works(count=10):
"""获取站酷热门作品"""
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36'
}
# 获取首页
response = requests.get('https://www.zcool.com.cn/', headers=headers)
response.raise_for_status()
soup = BeautifulSoup(response.text, 'html.parser')
# 提取作品链接
work_links = []
for a in soup.find_all('a', href=True):
href = a['href']
if '/work/' in href and len(work_links) < count + 10:
full_link = href if href.startswith('http') else f"https://www.zcool.com.cn{href}"
if full_link not in work_links:
work_links.append(full_link)
works = []
for link in work_links[:count]:
try:
work_response = requests.get(link, headers=headers)
work_soup = BeautifulSoup(work_response.text, 'html.parser')
title_tag = work_soup.find('title')
title = title_tag.text.strip() if title_tag else '未知标题'
title = title.replace('_站酷ZCOOL', '').strip()
description = extract_description(work_response.text)
category = classify_work(title, description)
author = extract_author(title)
highlight = generate_highlight(title, description, category)
works.append({
'title': title,
'link': link,
'description': description,
'category': category,
'author': author,
'highlight': highlight
})
time.sleep(0.3)
except Exception as e:
print(f"Error: {e}")
continue
return works
def format_list(works):
"""格式化作品列表(不含亮点,供人工撰写)"""
date_str = datetime.now().strftime('%Y年%m月%d日')
output = f"📢 {date_str} 站酷热门设计作品推荐:\n\n"
for i, w in enumerate(works, 1):
output += f"{i}. {w['title']}\n"
output += f" 类型:{w['category']}\n"
if w['author']:
output += f" 作者:{w['author']}\n"
output += f" 链接:{w['link']}\n\n"
# 统计
categories = {}
for w in works:
cat = w['category']
categories[cat] = categories.get(cat, 0) + 1
output += "## 📊 今日总结\n\n"
output += "**类型分布:** " + " | ".join([f"{k}({v})" for k, v in sorted(categories.items(), key=lambda x: -x[1])])
return output
def format_auto_message(works):
"""格式化自动消息(含标题链接、类型分类、亮点描述、趋势统计)"""
date_str = datetime.now().strftime('%Y年%m月%d日')
message = f"📢 {date_str} 站酷热门设计作品推荐:\n\n"
# 标题带链接的格式
emoji_map = {
"插画": "🎨", "AI绘画": "🤖", "3D": "🧊", "动画": "🎬",
"品牌设计": "📛", "UI/UX": "📱", "游戏": "🎮", "海报": "🖼️",
"摄影": "📷", "手办": "🦾", "汽车/工业": "🚗", "电商": "🛒",
"其他": "✨", "视频/MV": "🎵"
}
for i, w in enumerate(works, 1):
emoji = emoji_map.get(w['category'], "✨")
# 标题带链接
message += f"{i}. {emoji} [{w['title']}]({w['link']})\n"
# 类型分类 + 亮点描述(使用中文竖线)
message += f" 🏷️ 类型:{w['category']} | 🌟 {w.get('highlight', '精彩设计作品')}\n\n"
# 趋势统计
categories = {}
for w in works:
cat = w['category']
categories[cat] = categories.get(cat, 0) + 1
sorted_cats = sorted(categories.items(), key=lambda x: -x[1])
trend_str = " | ".join([f"{k}({v})" for k, v in sorted_cats])
message += f"---\n📊 今日趋势:**{trend_str}**\n"
return message
def main():
parser = argparse.ArgumentParser(description='站酷每日热门作品推荐')
parser.add_argument('--output-dir', default='zcool_daily',
help='输出目录')
args = parser.parse_args()
# 创建输出目录
os.makedirs(args.output_dir, exist_ok=True)
print("🔍 正在获取站酷热门作品...")
works = fetch_works(10)
print(f"✅ 获取到 {len(works)} 条作品")
# 使用带链接的格式输出
content = format_auto_message(works)
date_str = datetime.now().strftime('%Y-%m-%d')
save_path = os.path.join(args.output_dir, f'zcool_{date_str}.txt')
with open(save_path, 'w', encoding='utf-8') as f:
f.write(content)
print(f"📄 已保存至:{save_path}")
print("\n" + "="*50)
print(content)
if __name__ == "__main__":
main()
FILE:references/output-example.md
# 站酷每日热门作品推荐 - 输出示例
## 完整输出示例
```
📢 2026年03月20日 站酷热门设计作品推荐:
1. ❄️ [下雪的城市](https://www.zcool.com.cn/work/ZNzMyNDgwNTY=.html) - 孙无力
🏷️ 类型:插画 | 🌟 温馨雪景插画,氛围感拉满
2. 🎨 [原创绘本《帽子镇99号》](https://www.zcool.com.cn/work/ZNzMyODA5MjA=.html) - Simon小火
🏷️ 类型:插画 | 🌟 充满想象力的原创绘本角色设计
3. 📛 [GOOD TIME TEA 新中式茶饮品牌](https://www.zcool.com.cn/work/ZNzI5NDc4NDA=.html) - 伊昂杨杨杨杨杨
🏷️ 类型:品牌设计 | 🌟 新中式茶饮视觉系统,质感出众
4. 🎵 [《大唐Gang》MV](https://www.zcool.com.cn/work/ZNzMyNTEwNTI=.html) - BIG王0911
🏷️ 类型:视频/MV | 🌟 国风说唱 MV,视觉冲击力强
5. ⚔️ [云顶之弈神拳不朽李青CG](https://www.zcool.com.cn/work/ZNzMzMjg5MDQ=.html) - 两点十分动漫
🏷️ 类型:动画 | 🌟 东方武学风格游戏 CG,武侠氛围浓厚
6. 🛵 [小牛电动车产品渲染](https://www.zcool.com.cn/work/ZNzMzMzAyOTI=.html) - 葡萄创意
🏷️ 类型:3D | 🌟 产品级 3D 渲染,细节精致
7. 🎮 [《剑与远征启程》九尾pv](https://www.zcool.com.cn/work/ZNzMzMzUzMjQ=.html) - 萤火MicroFire
🏷️ 类型:动画 | 🌟 游戏角色动画 PV,特效炸裂
8. 🦌 [Illustration to 3D conversion](https://www.zcool.com.cn/work/ZNzMzMzQwNzY=.html) - 鹿言
🏷️ 类型:3D | 🌟 2D 转 3D 风格转换,视觉效果惊艳
9. 💧 [身体与水](https://www.zcool.com.cn/work/ZNzMzMTQ0NzY=.html) - 约翰强尼
🏷️ 类型:插画 | 🌟 充满意象的创意作品
10. 📖 [《少年》文章插画](https://www.zcool.com.cn/work/ZNzMzMzQzODQ=.html) - Danton丹彤
🏷️ 类型:插画 | 🌟 杂志文章配图,风格清新
---
📊 今日趋势:**插画(4) | 动画(2) | 3D(2) | 品牌设计(1) | 视频(1)**
```
## 格式说明
- **标题带链接**:作品名称可点击,直接跳转站酷详情页
- **类型标签**:AI绘画、插画、3D、动画、品牌设计、视频/MV 等
- **亮点描述**:基于作品标题和关键词自动生成的特色描述
- **趋势统计**:当日热门作品类型分布
## 运行命令
```bash
python3 scripts/zcool_daily.py
```
## 输出文件
作品列表保存至:`zcool_daily/zcool_{date}.txt`