From 2a0d1fd69f2b347a5be55339366f251802f80a39 Mon Sep 17 00:00:00 2001 From: ouzhuowei <190020754@qq.com> Date: Wed, 4 Feb 2026 09:48:39 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A5=E5=85=85=E5=90=84=E5=B9=B3=E5=8F=B0?= =?UTF-8?q?=E7=9A=84=E5=AA=92=E4=BD=93=E5=AD=98=E5=82=A8=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E8=B7=AF=E5=BE=84=E9=80=82=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: ouzhuowei <190020754@qq.com> --- store/bilibili/bilibilli_store_media.py | 7 ++++++- store/douyin/douyin_store_media.py | 13 +++++++++++-- store/excel_store_base.py | 6 +++++- store/weibo/weibo_store_media.py | 7 ++++++- store/xhs/xhs_store_media.py | 13 +++++++++++-- 5 files changed, 39 insertions(+), 7 deletions(-) diff --git a/store/bilibili/bilibilli_store_media.py b/store/bilibili/bilibilli_store_media.py index 5019781..b12048a 100644 --- a/store/bilibili/bilibilli_store_media.py +++ b/store/bilibili/bilibilli_store_media.py @@ -28,10 +28,15 @@ import aiofiles from base.base_crawler import AbstractStoreImage, AbstractStoreVideo from tools import utils +import config class BilibiliVideo(AbstractStoreVideo): - video_store_path: str = "data/bili/videos" + def __init__(self): + if config.SAVE_DATA_PATH: + self.video_store_path = f"{config.SAVE_DATA_PATH}/bili/videos" + else: + self.video_store_path = "data/bili/videos" async def store_video(self, video_content_item: Dict): """ diff --git a/store/douyin/douyin_store_media.py b/store/douyin/douyin_store_media.py index e4fbb83..baebf33 100644 --- a/store/douyin/douyin_store_media.py +++ b/store/douyin/douyin_store_media.py @@ -24,10 +24,15 @@ import aiofiles from base.base_crawler import AbstractStoreImage, AbstractStoreVideo from tools import utils +import config class DouYinImage(AbstractStoreImage): - image_store_path: str = "data/douyin/images" + def __init__(self): + if config.SAVE_DATA_PATH: + self.image_store_path = f"{config.SAVE_DATA_PATH}/douyin/images" + else: + self.image_store_path = "data/douyin/images" async def store_image(self, image_content_item: Dict): """ @@ -74,7 +79,11 @@ class DouYinImage(AbstractStoreImage): class DouYinVideo(AbstractStoreVideo): - video_store_path: str = "data/douyin/videos" + def __init__(self): + if config.SAVE_DATA_PATH: + self.video_store_path = f"{config.SAVE_DATA_PATH}/douyin/videos" + else: + self.video_store_path = "data/douyin/videos" async def store_video(self, video_content_item: Dict): """ diff --git a/store/excel_store_base.py b/store/excel_store_base.py index 052810e..a5bc438 100644 --- a/store/excel_store_base.py +++ b/store/excel_store_base.py @@ -46,6 +46,7 @@ except ImportError: from base.base_crawler import AbstractStore from tools import utils +import config class ExcelStoreBase(AbstractStore): @@ -111,7 +112,10 @@ class ExcelStoreBase(AbstractStore): self.crawler_type = crawler_type # Create data directory - self.data_dir = Path("data") / platform + if config.SAVE_DATA_PATH: + self.data_dir = Path(config.SAVE_DATA_PATH) / platform + else: + self.data_dir = Path("data") / platform self.data_dir.mkdir(parents=True, exist_ok=True) # Initialize workbook diff --git a/store/weibo/weibo_store_media.py b/store/weibo/weibo_store_media.py index 671fb7c..c38dd5a 100644 --- a/store/weibo/weibo_store_media.py +++ b/store/weibo/weibo_store_media.py @@ -28,10 +28,15 @@ import aiofiles from base.base_crawler import AbstractStoreImage, AbstractStoreVideo from tools import utils +import config class WeiboStoreImage(AbstractStoreImage): - image_store_path: str = "data/weibo/images" + def __init__(self): + if config.SAVE_DATA_PATH: + self.image_store_path = f"{config.SAVE_DATA_PATH}/weibo/images" + else: + self.image_store_path = "data/weibo/images" async def store_image(self, image_content_item: Dict): """ diff --git a/store/xhs/xhs_store_media.py b/store/xhs/xhs_store_media.py index 631bd04..c38a812 100644 --- a/store/xhs/xhs_store_media.py +++ b/store/xhs/xhs_store_media.py @@ -28,10 +28,15 @@ import aiofiles from base.base_crawler import AbstractStoreImage, AbstractStoreVideo from tools import utils +import config class XiaoHongShuImage(AbstractStoreImage): - image_store_path: str = "data/xhs/images" + def __init__(self): + if config.SAVE_DATA_PATH: + self.image_store_path = f"{config.SAVE_DATA_PATH}/xhs/images" + else: + self.image_store_path = "data/xhs/images" async def store_image(self, image_content_item: Dict): """ @@ -78,7 +83,11 @@ class XiaoHongShuImage(AbstractStoreImage): class XiaoHongShuVideo(AbstractStoreVideo): - video_store_path: str = "data/xhs/videos" + def __init__(self): + if config.SAVE_DATA_PATH: + self.video_store_path = f"{config.SAVE_DATA_PATH}/xhs/videos" + else: + self.video_store_path = "data/xhs/videos" async def store_video(self, video_content_item: Dict): """