|
|
@@ -34,15 +34,27 @@ class SearchManager:
|
|
|
html_path = self.save_page(keyword, start)
|
|
|
|
|
|
# 保存到数据库
|
|
|
- restult = self.db_manager.save_search_result(
|
|
|
+ return self.save_search_result(keyword, start, url, html_path)
|
|
|
+
|
|
|
+ def save_search_result(self, keyword: str, start: int, url: str, html_path: str) -> SearchResult:
|
|
|
+ """保存搜索结果到数据库
|
|
|
+
|
|
|
+ Args:
|
|
|
+ keyword: 搜索关键词
|
|
|
+ start: 起始位置
|
|
|
+ url: 搜索URL
|
|
|
+ html_path: 保存的HTML文件路径
|
|
|
+
|
|
|
+ Returns:
|
|
|
+ 数据库中的SearchResult记录
|
|
|
+ """
|
|
|
+ return self.db_manager.save_search_result(
|
|
|
keyword=keyword,
|
|
|
start=start,
|
|
|
url=url,
|
|
|
html_path=str(html_path)
|
|
|
)
|
|
|
|
|
|
- return html_path
|
|
|
-
|
|
|
async def next_page(self, keyword: str, current_start: int) -> list[str]:
|
|
|
"""翻到下一页并返回结果链接
|
|
|
|
|
|
@@ -63,8 +75,6 @@ class SearchManager:
|
|
|
|
|
|
save_path = save_dir / f"{start}.html"
|
|
|
save_to_file(self.page.html, save_path)
|
|
|
-
|
|
|
- # 保存到数据库
|
|
|
return save_path
|
|
|
|
|
|
async def _process_page(self, url: str) -> CrawlResult:
|