🔄 卡若AI 同步 2026-03-04 17:22 | 更新:卡木、运营中枢工作台 | 排除 >20MB: 11 个
This commit is contained in:
@@ -25,7 +25,11 @@ cd /Users/karuo/Documents/开发/2、私域银行/神射手 && docker compose up
|
||||
|
||||
### 3. 使用方式
|
||||
|
||||
- **方式一(推荐)**:执行前点击节点「**设置链接与是否下载**」,将 `url` 改为要解析的抖音链接(如 `https://v.douyin.com/xxx`),`download` 为 `true` 则同时下载视频,为 `false` 则仅解析文案。然后点击 **Test workflow** 或 **Execute Workflow**。
|
||||
- **方式一(推荐)**:执行前点击节点「**设置链接与是否下载**」,将 `url` 改为要解析的抖音链接。支持:
|
||||
- 短链:`https://v.douyin.com/xxx`
|
||||
- 视频页:`https://www.douyin.com/video/7591362359689147057`
|
||||
- 精选页:`https://www.douyin.com/jingxuan?modal_id=7591362359689147057`
|
||||
`download` 为 `true` 则同时下载视频,为 `false` 则仅解析文案。然后点击 **Test workflow** 或 **Execute Workflow**。
|
||||
- **方式二**:用「**Execute Workflow**」时在输入数据中传入一条数据:`{"url": "https://v.douyin.com/xxx", "download": true}`。
|
||||
|
||||
### 4. 结果
|
||||
|
||||
@@ -27,10 +27,12 @@ MOBILE_UA = (
|
||||
|
||||
|
||||
def parse_url_to_aweme_id(url: str) -> str | None:
|
||||
"""从抖音链接提取 aweme_id"""
|
||||
"""从抖音链接提取 aweme_id(支持 /video/ID 与 jingxuan?modal_id=ID)"""
|
||||
url = url.strip()
|
||||
# 完整链接可直接提取
|
||||
m = re.search(r"/video/(\d+)", url)
|
||||
if m:
|
||||
return m.group(1)
|
||||
m = re.search(r"modal_id=(\d+)", url)
|
||||
if m:
|
||||
return m.group(1)
|
||||
return None
|
||||
@@ -39,10 +41,16 @@ def parse_url_to_aweme_id(url: str) -> str | None:
|
||||
def fetch_and_parse(url: str) -> tuple[dict, str | None]:
|
||||
"""
|
||||
请求视频页面,解析 ID、文案、视频 URL。
|
||||
支持短链 v.douyin.com 或完整链接。
|
||||
支持短链 v.douyin.com、完整链接、精选页 jingxuan?modal_id=ID。
|
||||
返回 (info_dict, video_url)
|
||||
"""
|
||||
url = url.strip()
|
||||
initial_url = url # 保留原始链接,用于回退提取 aweme_id
|
||||
# 精选页 jingxuan?modal_id= 转为 /video/ID 再请求
|
||||
if "jingxuan" in url and "modal_id=" in url:
|
||||
aweme = parse_url_to_aweme_id(url)
|
||||
if aweme:
|
||||
url = f"https://www.douyin.com/video/{aweme}"
|
||||
# 短链需先 resolve 到完整链接
|
||||
if "v.douyin.com" in url:
|
||||
try:
|
||||
@@ -62,7 +70,7 @@ def fetch_and_parse(url: str) -> tuple[dict, str | None]:
|
||||
except Exception as e:
|
||||
return {"error": str(e), "aweme_id": None}, None
|
||||
|
||||
aweme_id = parse_url_to_aweme_id(url)
|
||||
aweme_id = parse_url_to_aweme_id(url) or parse_url_to_aweme_id(initial_url)
|
||||
info = {
|
||||
"aweme_id": aweme_id or "unknown",
|
||||
"video_id": None,
|
||||
@@ -83,6 +91,8 @@ def fetch_and_parse(url: str) -> tuple[dict, str | None]:
|
||||
m = re.search(pattern, html)
|
||||
if m:
|
||||
info[key] = m.group(1)
|
||||
if info.get("aweme_id") == "unknown" and parse_url_to_aweme_id(initial_url):
|
||||
info["aweme_id"] = parse_url_to_aweme_id(initial_url)
|
||||
|
||||
# 2. 从 ROUTER_DATA 提取视频 URL(优先,避免拿到封面图)
|
||||
router = re.search(r"window\._ROUTER_DATA\s*=\s*(\{.*?\});?\s*</script>", html, re.DOTALL)
|
||||
|
||||
@@ -221,3 +221,4 @@
|
||||
| 2026-03-03 22:01:54 | 🔄 卡若AI 同步 2026-03-03 22:01 | 更新:Cursor规则、金仓、水溪整理归档、卡木、总索引与入口、运营中枢参考资料、运营中枢工作台 | 排除 >20MB: 11 个 |
|
||||
| 2026-03-04 11:48:54 | 🔄 卡若AI 同步 2026-03-04 11:48 | 更新:水桥平台对接、运营中枢参考资料、运营中枢工作台 | 排除 >20MB: 11 个 |
|
||||
| 2026-03-04 17:03:17 | 🔄 卡若AI 同步 2026-03-04 17:03 | 更新:卡木、运营中枢工作台 | 排除 >20MB: 11 个 |
|
||||
| 2026-03-04 17:09:09 | 🔄 卡若AI 同步 2026-03-04 17:09 | 更新:卡木、运营中枢工作台 | 排除 >20MB: 11 个 |
|
||||
|
||||
@@ -224,3 +224,4 @@
|
||||
| 2026-03-03 22:01:54 | 成功 | 成功 | 🔄 卡若AI 同步 2026-03-03 22:01 | 更新:Cursor规则、金仓、水溪整理归档、卡木、总索引与入口、运营中枢参考资料、运营中枢工作台 | 排除 >20MB: 11 个 | [仓库](http://open.quwanzhi.com:3000/fnvtk/karuo-ai) [百科](http://open.quwanzhi.com:3000/fnvtk/karuo-ai/wiki) |
|
||||
| 2026-03-04 11:48:54 | 成功 | 成功 | 🔄 卡若AI 同步 2026-03-04 11:48 | 更新:水桥平台对接、运营中枢参考资料、运营中枢工作台 | 排除 >20MB: 11 个 | [仓库](http://open.quwanzhi.com:3000/fnvtk/karuo-ai) [百科](http://open.quwanzhi.com:3000/fnvtk/karuo-ai/wiki) |
|
||||
| 2026-03-04 17:03:17 | 成功 | 成功 | 🔄 卡若AI 同步 2026-03-04 17:03 | 更新:卡木、运营中枢工作台 | 排除 >20MB: 11 个 | [仓库](http://open.quwanzhi.com:3000/fnvtk/karuo-ai) [百科](http://open.quwanzhi.com:3000/fnvtk/karuo-ai/wiki) |
|
||||
| 2026-03-04 17:09:09 | 成功 | 成功 | 🔄 卡若AI 同步 2026-03-04 17:09 | 更新:卡木、运营中枢工作台 | 排除 >20MB: 11 个 | [仓库](http://open.quwanzhi.com:3000/fnvtk/karuo-ai) [百科](http://open.quwanzhi.com:3000/fnvtk/karuo-ai/wiki) |
|
||||
|
||||
Reference in New Issue
Block a user