fix: 修复报告摘要生成并稳定默认端口
This commit is contained in:
+17
-5
@@ -88,11 +88,23 @@ class DouyinPlatform:
|
||||
return self.map_items(payload, limit=limit)
|
||||
|
||||
def fetch_comments(self, source_item_id: str, *, limit: int) -> list[CommentData]:
|
||||
payload = self.client.get(
|
||||
"/api/v1/douyin/app/v3/fetch_video_comments",
|
||||
params={"aweme_id": source_item_id, "cursor": 0, "count": 20},
|
||||
)
|
||||
return self.map_comments(payload, limit=limit)
|
||||
comments: list[CommentData] = []
|
||||
cursor = 0
|
||||
page_size = min(20, limit)
|
||||
while len(comments) < limit:
|
||||
payload = self.client.get(
|
||||
"/api/v1/douyin/app/v3/fetch_video_comments",
|
||||
params={"aweme_id": source_item_id, "cursor": cursor, "count": page_size},
|
||||
)
|
||||
page_comments = self.map_comments(payload, limit=limit - len(comments))
|
||||
comments.extend(page_comments)
|
||||
data = payload.get("data", {})
|
||||
next_cursor = data.get("cursor") or payload.get("cursor")
|
||||
has_more = data.get("has_more", payload.get("has_more", 0))
|
||||
if not page_comments or not has_more or next_cursor in (None, cursor):
|
||||
break
|
||||
cursor = next_cursor
|
||||
return comments[:limit]
|
||||
|
||||
def _author_name(self, comment: dict[str, Any]) -> str | None:
|
||||
user = comment.get("user") or {}
|
||||
|
||||
Reference in New Issue
Block a user