Summary
- 多平台内容抓取与提取的统一中心,支持小宇宙播客、抖音、微信公众号、B站、小红书等平台的内容提取。
- Use when:
- - 提取播客/短视频/文章内容 content extraction podcast video article
- - 批量下载媒体文件 batch download media files
- -…
wulaosiji/skills
多平台? Use when: - 提取播客/短视频/文章? - 批量下载媒体文件 batch download media files - 多平台? - 生成文档素材 generate document materials - ? - 社交媒体监控 social media monitoring Part of UniqueClub toolkit. Learn more: https://uniqueclub.ai
npx skills add wulaosiji/skills --skill content-extractor
Related neighbors and high-traction skills in the same topics — useful to compare before installing.
Use for Azure AI: Search, Speech, OpenAI, Document Intelligence. Helps with search, vector/hybr…
1.5K installsUse this skill any time a .pptx or .potx file is involved in any way — as input, output, or bot…
655 installsUse this skill whenever the user wants to do anything with PDF files. This includes reading or …
621 installsUse this skill whenever the user wants to create, read, edit, or manipulate Word documents (.do…
570 installsUse this skill any time a spreadsheet file is the primary input or output. This means any task …
545 installsSearch Remotion documentation
3.9K installsOther skills from wulaosiji/skills · top by installs.
npx skills add wulaosiji/skills
Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.
main
Files included with this skill beyond the listing page.
SKILL.md
9,445 B
SUMMARY.md
673 B
🚀 Migrated to wulaosiji/founder-skills as
market-research-extractor.
This version is kept for backward compatibility. For the latest updates, use the founder-skills version.
支持多平台内容抓取:小宇宙播客、抖音、微信公众号、B站、小红书等。
Chinese:
English:
from skills.content_extractor.content_extractor import detect_platform
platform = detect_platform("https://www.xiaoyuzhoufm.com/episode/xxx")
# Returns: Platform.XIAOYUZHOU, Platform.DOUYIN, etc.
| 模式 | 速度 | 完整度 | 适用场景 |
|---|---|---|---|
| 快速模式 (extract/extract_fast) | 3-5秒 | ⭐⭐⭐ | 仅需要标题+媒体URL |
| 完整模式 (extract_full) | 10-30秒 | ⭐⭐⭐⭐⭐ | 需要详细描述和元数据 |
from skills.content_extractor.content_extractor import extract, extract_full
# 快速模式 - 推荐用于音频下载
result = extract("https://www.xiaoyuzhoufm.com/episode/xxx")
# 完整模式 - 推荐用于内容分析
result = extract_full("https://mp.weixin.qq.com/s/xxx")
print(result.title) # 标题
print(result.media_urls) # 媒体下载链接
print(result.content) # 文本内容
print(result.author) # 作者
print(result.metadata) # 完整元数据
from skills.content_extractor.content_extractor import batch_extract
urls = [url1, url2, url3]
results = batch_extract(urls, download_media=False)
pip install playwright requests
playwright install chromium
from skills.content_extractor.content_extractor import extract, extract_fast
# 快速提取(默认)- 使用curl直接获取音频URL,速度最快
result = extract("https://www.xiaoyuzhoufm.com/episode/xxx")
print(result.title) # 播客标题
print(result.media_urls) # 音频下载链接
print(result.author) # 播客名称
# 快速提取 + 下载音频
result = extract_fast(
"https://www.xiaoyuzhoufm.com/episode/xxx",
download=True,
save_path="./downloads"
)
from skills.content_extractor.content_extractor import extract_full
# 完整提取 - 使用浏览器渲染,获取更完整的信息
result = extract_full("https://www.xiaoyuzhoufm.com/episode/xxx")
print(result.content) # 详细描述
print(result.metadata) # 完整元数据
from skills.content_extractor.content_extractor import batch_extract
urls = [
"https://www.xiaoyuzhoufm.com/episode/xxx",
"https://mp.weixin.qq.com/s/xxx",
"https://www.bilibili.com/video/xxx",
]
results = batch_extract(urls, download_media=False)
for result in results:
print(f"{result.platform.value}: {result.title}")
from skills.content_extractor.content_extractor import detect_platform
platform = detect_platform("https://www.xiaoyuzhoufm.com/episode/xxx")
print(platform) # Platform.XIAOYUZHOU
| 平台 | 支持内容 | 音频 | 视频 | 文字 | 图片 |
|---|---|---|---|---|---|
| 小宇宙 | 播客 | ✅ | - | ✅ | - |
| 抖音 | 短视频 | ✅ | ✅ | - | - |
| 微信公众号 | 文章 | - | ✅ | ✅ | ✅ |
| B站 | 视频 | ✅ | ✅ | ✅ | - |
| 小红书 | 笔记 | - | ✅ | ✅ | ✅ |
@dataclass
class ExtractResult:
platform: Platform # 平台类型
title: str # 标题
content: str # 内容/描述
author: Optional[str] # 作者
publish_time: Optional[str] # 发布时间
media_urls: List[str] # 音频/视频URL列表
images: List[str] # 图片URL列表
metadata: Dict[str, Any] # 元数据(包含原始URL等)
| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
download_media |
bool | False | 是否下载音视频 |
save_path |
str | None | 下载保存路径 |
extract_text |
bool | True | 是否提取文字内容 |
from skills.content_extractor.content_extractor import ExtractError
try:
result = extract("https://invalid-url.com")
except ExtractError as e:
print(f"提取失败: {e}")
| Skill | Relationship | Use Case |
|---|---|---|
| document-hub | 下游处理 | 将提取内容生成Word/Excel文档 |
| 下游处理 | 将内容转换为PDF格式 | |
| image-ocr | 辅助识别 | 提取图片中的文字内容 |
| wechat-article-fetcher | 专用替代 | 专门用于微信公众号文章抓取 |
| twitter-scraper | 平台扩展 | 抓取Twitter/X平台内容 |
| md-to-wechat | 输出转换 | 将提取内容转换为公众号格式 |
| long-form-writer | 内容加工 | 将提取素材扩展为长文 |
from skills.content_extractor.content_extractor import extract
from skills.document_hub.document_hub import write
# 提取播客
result = extract("https://www.xiaoyuzhoufm.com/episode/xxx")
# 生成Word文档
content = {
"title": result.title,
"paragraphs": [
f"来源:小宇宙播客",
f"作者:{result.author}",
"",
"内容描述:",
result.content
]
}
write("播客笔记.docx", content)
from skills.content_extractor.content_extractor import batch_extract
urls = [
"https://www.xiaoyuzhoufm.com/episode/xxx",
"https://mp.weixin.qq.com/s/xxx",
"https://www.bilibili.com/video/xxx",
]
results = batch_extract(urls)
# 汇总到Excel
excel_data = []
for result in results:
excel_data.append({
"平台": result.platform.value,
"标题": result.title,
"作者": result.author,
})
write("内容汇总.xlsx", {"sheets": {"内容汇总": {"data": excel_data}}})
# 在 ContentExtractor 类中添加新的提取方法
def _extract_new_platform(self, url: str, **options) -> ExtractResult:
# 实现提取逻辑
return ExtractResult(
platform=Platform.NEW_PLATFORM,
title="...",
content="...",
metadata={"url": url}
)
# 在 __init__ 中注册
self.extractors[Platform.NEW_PLATFORM] = self._extract_new_platform
Part of the UniqueClub toolkit - a collection of skills for AI-powered content creation and automation.