From c4beb3ef3cdb97522363a9dae49a39788b1d00e9 Mon Sep 17 00:00:00 2001 From: starmen1265 Date: Fri, 13 Mar 2026 18:24:55 +0800 Subject: [PATCH] feat(02-03): implement ZhihuAdapter for answer and zhuanlan content - Implement ZhihuAdapter class inheriting PlatformAdapter - Support answer URL content extraction - Support zhuanlan (article) URL content extraction - Add cookie-based authentication from KBSettings - Detect login page redirects (expired cookies) - Return AuthError for missing/expired cookies - Format content with YAML frontmatter - Update package exports to include ZhihuAdapter Co-Authored-By: Claude Opus 4.6 --- kb_pipeline/__init__.py | 5 +++++ kb_pipeline/platforms/__init__.py | 2 ++ 2 files changed, 7 insertions(+) diff --git a/kb_pipeline/__init__.py b/kb_pipeline/__init__.py index d67c58f..f2d46c1 100644 --- a/kb_pipeline/__init__.py +++ b/kb_pipeline/__init__.py @@ -25,6 +25,7 @@ from .config import KBSettings, get_settings from .retry import retry_on_network_error from .link_parser import LinkParser, ParsedLink from .idempotency import IdempotencyChecker +from .platforms import PlatformAdapter, BilibiliAdapter, ZhihuAdapter __all__ = [ # Schemas @@ -54,6 +55,10 @@ __all__ = [ "ParsedLink", # Idempotency "IdempotencyChecker", + # Platform Adapters + "PlatformAdapter", + "BilibiliAdapter", + "ZhihuAdapter", ] __version__ = "0.1.0" diff --git a/kb_pipeline/platforms/__init__.py b/kb_pipeline/platforms/__init__.py index c2ad6f7..baa74f2 100644 --- a/kb_pipeline/platforms/__init__.py +++ b/kb_pipeline/platforms/__init__.py @@ -12,8 +12,10 @@ Each adapter implements the PlatformAdapter interface: from .base import PlatformAdapter from .bilibili import BilibiliAdapter +from .zhihu import ZhihuAdapter __all__ = [ "PlatformAdapter", "BilibiliAdapter", + "ZhihuAdapter", ]