diff --git a/app/streamers/page.tsx b/app/streamers/page.tsx index a667c19..5e809c8 100644 --- a/app/streamers/page.tsx +++ b/app/streamers/page.tsx @@ -134,8 +134,8 @@ export default function Home() { -
{item.status}
-
-
-

{item.remark}

-
- {item.url} -
- - - - - - await onConfirm(item.id)} - // onCancel={onCancel} - > - - - -
+
{item.status}
+
+

{item.remark}

+
+ {item.url} +
+ + + + + + await onConfirm(item.id)} + // onCancel={onCancel} + > + + +
diff --git a/biliup/__init__.py b/biliup/__init__.py index 0524657..57dd08e 100644 --- a/biliup/__init__.py +++ b/biliup/__init__.py @@ -2,7 +2,7 @@ import logging import platform import sys -__version__ = "0.4.60" +__version__ = "0.4.61" LOG_CONF = { 'version': 1, diff --git a/biliup/downloader.py b/biliup/downloader.py index 257d825..781e139 100644 --- a/biliup/downloader.py +++ b/biliup/downloader.py @@ -17,3 +17,11 @@ def download(fname, url, **kwargs): pg.__dict__[k] = kwargs.get(k) break return pg.start() + + +def biliup_download(name, url, kwargs: dict): + kwargs.pop('url') + suffix = kwargs.get('format') + if suffix: + kwargs['suffix'] = suffix + return download(name, url, **kwargs) \ No newline at end of file diff --git a/biliup/handler.py b/biliup/handler.py index 6602071..526517c 100644 --- a/biliup/handler.py +++ b/biliup/handler.py @@ -12,7 +12,7 @@ from biliup.config import config from .app import event_manager, context from .common.tools import NamedLock, processor from .database.db import get_stream_info_by_filename, SessionLocal -from .downloader import download +from .downloader import biliup_download from .engine.event import Event from .engine.upload import UploadBase from .uploader import upload, fmt_title_and_desc @@ -50,13 +50,8 @@ def process(name, url): url_status = context['PluginInfo'].url_status # 下载开始 try: - kwargs: dict = config['streamers'][name].copy() - kwargs.pop('url') - suffix = kwargs.get('format') - if suffix: - kwargs['suffix'] = suffix url_status[url] = 1 - stream_info = download(name, url, **kwargs) + stream_info = biliup_download(name, url, config['streamers'][name].copy()) # 永远不可能有两个同url的下载线程 # 可能对同一个url同时发送两次上传事件 with NamedLock(f"upload_count_{url}"): diff --git a/biliup/plugins/douyin.py b/biliup/plugins/douyin.py index 83171bb..509a022 100644 --- a/biliup/plugins/douyin.py +++ b/biliup/plugins/douyin.py @@ -54,8 +54,11 @@ class Douyin(DownloadBase): self.fake_headers['Cookie'] = f'ttwid={DouyinUtils.get_ttwid()};{self.fake_headers["cookie"]}' page = (await biliup.common.util.client.get( DouyinUtils.build_request_url(f"https://live.douyin.com/webcast/room/web/enter/?web_rid={room_id}"), - headers=self.fake_headers, timeout=5)).text - room_info = json.loads(page)['data']['data'] + headers=self.fake_headers, timeout=5)).json() + room_info = page.get('data').get('data') + if room_info is None: + logger.warning(f"{Douyin.__name__}: {self.url}: {page}") + return False if len(room_info) > 0: room_info = room_info[0] else: