mirror of
https://github.com/hanxi/xiaomusic.git
synced 2026-03-15 08:13:16 +08:00
重构: 优化 import
This commit is contained in:
@@ -1,9 +1,6 @@
|
||||
import difflib
|
||||
|
||||
from xiaomusic.utils import (
|
||||
find_best_match,
|
||||
keyword_detection,
|
||||
)
|
||||
from xiaomusic.utils.text_utils import find_best_match, keyword_detection
|
||||
|
||||
if __name__ == "__main__":
|
||||
user_input = "八年的爱"
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
import math
|
||||
|
||||
from xiaomusic.const import (
|
||||
SUPPORT_MUSIC_TYPE,
|
||||
)
|
||||
from xiaomusic.utils import (
|
||||
get_local_music_duration,
|
||||
traverse_music_directory,
|
||||
)
|
||||
from xiaomusic.const import SUPPORT_MUSIC_TYPE
|
||||
from xiaomusic.utils.file_utils import traverse_music_directory
|
||||
from xiaomusic.utils.music_utils import get_local_music_duration
|
||||
|
||||
|
||||
async def test_one_music(filename):
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
import traceback
|
||||
|
||||
from xiaomusic.const import (
|
||||
SUPPORT_MUSIC_TYPE,
|
||||
)
|
||||
from xiaomusic.utils import (
|
||||
extract_audio_metadata,
|
||||
traverse_music_directory,
|
||||
)
|
||||
from xiaomusic.const import SUPPORT_MUSIC_TYPE
|
||||
from xiaomusic.utils.file_utils import traverse_music_directory
|
||||
from xiaomusic.utils.music_utils import extract_audio_metadata
|
||||
|
||||
# title 标题
|
||||
# artist 艺术家
|
||||
|
||||
@@ -1,6 +1,4 @@
|
||||
from xiaomusic.utils import (
|
||||
download_and_extract,
|
||||
)
|
||||
from xiaomusic.utils.system_utils import download_and_extract
|
||||
|
||||
if __name__ == "__main__":
|
||||
import asyncio
|
||||
|
||||
@@ -36,20 +36,20 @@ from xiaomusic.api.models import (
|
||||
DownloadPlayList,
|
||||
UrlInfo,
|
||||
)
|
||||
from xiaomusic.utils import (
|
||||
check_bili_fav_list,
|
||||
from xiaomusic.utils.file_utils import (
|
||||
chmoddir,
|
||||
convert_file_to_mp3,
|
||||
clean_temp_dir,
|
||||
remove_common_prefix,
|
||||
safe_join_path,
|
||||
)
|
||||
from xiaomusic.utils.music_utils import convert_file_to_mp3, is_mp3, remove_id3_tags
|
||||
from xiaomusic.utils.network_utils import (
|
||||
check_bili_fav_list,
|
||||
download_one_music,
|
||||
download_playlist,
|
||||
downloadfile,
|
||||
is_mp3,
|
||||
remove_common_prefix,
|
||||
remove_id3_tags,
|
||||
safe_join_path,
|
||||
try_add_access_control_param,
|
||||
)
|
||||
from xiaomusic.utils.file_utils import clean_temp_dir
|
||||
from xiaomusic.utils.system_utils import try_add_access_control_param
|
||||
|
||||
router = APIRouter()
|
||||
|
||||
|
||||
@@ -37,7 +37,7 @@ from xiaomusic.api.dependencies import (
|
||||
verification,
|
||||
xiaomusic,
|
||||
)
|
||||
from xiaomusic.utils import (
|
||||
from xiaomusic.utils.system_utils import (
|
||||
deepcopy_data_no_sensitive_info,
|
||||
get_latest_version,
|
||||
restart_xiaomusic,
|
||||
|
||||
@@ -10,11 +10,7 @@
|
||||
import json
|
||||
import os
|
||||
|
||||
from miservice import (
|
||||
MiAccount,
|
||||
MiIOService,
|
||||
MiNAService,
|
||||
)
|
||||
from miservice import MiAccount, MiIOService, MiNAService
|
||||
|
||||
from xiaomusic.config import Device
|
||||
from xiaomusic.const import COOKIE_TEMPLATE
|
||||
|
||||
@@ -13,7 +13,7 @@ from xiaomusic.const import (
|
||||
PLAY_TYPE_SEQ,
|
||||
PLAY_TYPE_SIN,
|
||||
)
|
||||
from xiaomusic.utils import validate_proxy
|
||||
from xiaomusic.utils.system_utils import validate_proxy
|
||||
|
||||
|
||||
# 默认口令
|
||||
|
||||
@@ -13,10 +13,7 @@ import time
|
||||
|
||||
from aiohttp import ClientTimeout
|
||||
|
||||
from xiaomusic.const import (
|
||||
GET_ASK_BY_MINA,
|
||||
LATEST_ASK_API,
|
||||
)
|
||||
from xiaomusic.const import GET_ASK_BY_MINA, LATEST_ASK_API
|
||||
|
||||
|
||||
class ConversationPoller:
|
||||
|
||||
@@ -4,10 +4,7 @@ from apscheduler.schedulers.asyncio import AsyncIOScheduler
|
||||
from apscheduler.triggers.base import BaseTrigger
|
||||
from apscheduler.triggers.cron import CronTrigger
|
||||
|
||||
from xiaomusic.holiday import (
|
||||
is_off_day,
|
||||
is_working_day,
|
||||
)
|
||||
from xiaomusic.holiday import is_off_day, is_working_day
|
||||
from xiaomusic.utils.file_utils import clean_temp_dir
|
||||
|
||||
|
||||
|
||||
@@ -7,9 +7,7 @@
|
||||
"""
|
||||
|
||||
from xiaomusic.device_player import XiaoMusicDevice
|
||||
from xiaomusic.utils import (
|
||||
parse_str_to_dict,
|
||||
)
|
||||
from xiaomusic.utils.text_utils import parse_str_to_dict
|
||||
|
||||
|
||||
class DeviceManager:
|
||||
|
||||
@@ -23,11 +23,8 @@ from xiaomusic.const import (
|
||||
TTS_COMMAND,
|
||||
)
|
||||
from xiaomusic.events import DEVICE_CONFIG_CHANGED
|
||||
from xiaomusic.utils import (
|
||||
chmodfile,
|
||||
custom_sort_key,
|
||||
list2str,
|
||||
)
|
||||
from xiaomusic.utils.file_utils import chmodfile
|
||||
from xiaomusic.utils.text_utils import custom_sort_key, list2str
|
||||
|
||||
|
||||
class XiaoMusicDevice:
|
||||
|
||||
@@ -15,22 +15,17 @@ from dataclasses import asdict
|
||||
|
||||
from xiaomusic.const import SUPPORT_MUSIC_TYPE
|
||||
from xiaomusic.events import CONFIG_CHANGED
|
||||
from xiaomusic.utils import (
|
||||
custom_sort_key,
|
||||
extract_audio_metadata,
|
||||
find_best_match,
|
||||
fuzzyfinder,
|
||||
not_in_dirs,
|
||||
save_picture_by_base64,
|
||||
set_music_tag_to_file,
|
||||
traverse_music_directory,
|
||||
try_add_access_control_param,
|
||||
)
|
||||
from xiaomusic.utils.file_utils import not_in_dirs, traverse_music_directory
|
||||
from xiaomusic.utils.music_utils import (
|
||||
Metadata,
|
||||
extract_audio_metadata,
|
||||
get_local_music_duration,
|
||||
get_web_music_duration,
|
||||
save_picture_by_base64,
|
||||
set_music_tag_to_file,
|
||||
)
|
||||
from xiaomusic.utils.system_utils import try_add_access_control_param
|
||||
from xiaomusic.utils.text_utils import custom_sort_key, find_best_match, fuzzyfinder
|
||||
|
||||
|
||||
class MusicLibrary:
|
||||
|
||||
@@ -6,10 +6,8 @@
|
||||
import base64
|
||||
import urllib.parse
|
||||
|
||||
from xiaomusic.utils import (
|
||||
MusicUrlCache,
|
||||
try_add_access_control_param,
|
||||
)
|
||||
from xiaomusic.utils.network_utils import MusicUrlCache
|
||||
from xiaomusic.utils.system_utils import try_add_access_control_param
|
||||
|
||||
|
||||
class MusicUrlHandler:
|
||||
|
||||
@@ -12,9 +12,7 @@ from urllib.parse import urlparse
|
||||
|
||||
import aiohttp
|
||||
|
||||
from xiaomusic.const import (
|
||||
PLAY_TYPE_ALL,
|
||||
)
|
||||
from xiaomusic.const import PLAY_TYPE_ALL
|
||||
|
||||
|
||||
def _build_keyword(song_name, artist):
|
||||
|
||||
@@ -1,123 +1,11 @@
|
||||
#!/usr/bin/env python3
|
||||
"""
|
||||
Utils package - 工具函数模块
|
||||
工具函数模块
|
||||
|
||||
将原 utils.py 拆分为多个职责清晰的子模块:
|
||||
子模块分类:
|
||||
- text_utils: 文本处理和搜索
|
||||
- file_utils: 文件和目录操作
|
||||
- music_utils: 音乐文件处理
|
||||
- network_utils: 网络请求和下载
|
||||
- system_utils: 系统操作和环境
|
||||
"""
|
||||
|
||||
# 从各子模块导入常用函数,保持向后兼容
|
||||
from xiaomusic.utils.file_utils import (
|
||||
chmoddir,
|
||||
chmodfile,
|
||||
not_in_dirs,
|
||||
remove_common_prefix,
|
||||
safe_join_path,
|
||||
traverse_music_directory,
|
||||
)
|
||||
from xiaomusic.utils.music_utils import (
|
||||
Metadata,
|
||||
convert_file_to_mp3,
|
||||
extract_audio_metadata,
|
||||
get_duration_by_ffprobe,
|
||||
get_duration_by_mutagen,
|
||||
get_local_music_duration,
|
||||
get_web_music_duration,
|
||||
is_m4a,
|
||||
is_mp3,
|
||||
remove_id3_tags,
|
||||
save_picture_by_base64,
|
||||
set_music_tag_to_file,
|
||||
)
|
||||
from xiaomusic.utils.network_utils import (
|
||||
MusicUrlCache,
|
||||
check_bili_fav_list,
|
||||
download_one_music,
|
||||
download_playlist,
|
||||
downloadfile,
|
||||
fetch_json_get,
|
||||
text_to_mp3,
|
||||
)
|
||||
from xiaomusic.utils.system_utils import (
|
||||
deepcopy_data_no_sensitive_info,
|
||||
download_and_extract,
|
||||
get_latest_version,
|
||||
get_os_architecture,
|
||||
get_random,
|
||||
is_docker,
|
||||
restart_xiaomusic,
|
||||
try_add_access_control_param,
|
||||
update_version,
|
||||
validate_proxy,
|
||||
)
|
||||
from xiaomusic.utils.text_utils import (
|
||||
calculate_tts_elapse,
|
||||
chinese_to_number,
|
||||
custom_sort_key,
|
||||
find_best_match,
|
||||
find_key_by_partial_string,
|
||||
fuzzyfinder,
|
||||
keyword_detection,
|
||||
list2str,
|
||||
parse_str_to_dict,
|
||||
split_sentences,
|
||||
traditional_to_simple,
|
||||
)
|
||||
|
||||
__all__ = [
|
||||
# text_utils
|
||||
"calculate_tts_elapse",
|
||||
"chinese_to_number",
|
||||
"custom_sort_key",
|
||||
"find_best_match",
|
||||
"find_key_by_partial_string",
|
||||
"fuzzyfinder",
|
||||
"keyword_detection",
|
||||
"list2str",
|
||||
"parse_str_to_dict",
|
||||
"split_sentences",
|
||||
"traditional_to_simple",
|
||||
# file_utils
|
||||
"chmoddir",
|
||||
"chmodfile",
|
||||
"not_in_dirs",
|
||||
"remove_common_prefix",
|
||||
"safe_join_path",
|
||||
"traverse_music_directory",
|
||||
# music_utils
|
||||
"Metadata",
|
||||
"convert_file_to_mp3",
|
||||
"extract_audio_metadata",
|
||||
"get_duration_by_ffprobe",
|
||||
"get_duration_by_mutagen",
|
||||
"get_local_music_duration",
|
||||
"get_web_music_duration",
|
||||
"is_m4a",
|
||||
"is_mp3",
|
||||
"remove_id3_tags",
|
||||
"set_music_tag_to_file",
|
||||
"save_picture_by_base64",
|
||||
# network_utils
|
||||
"MusicUrlCache",
|
||||
"check_bili_fav_list",
|
||||
"download_one_music",
|
||||
"download_playlist",
|
||||
"downloadfile",
|
||||
"fetch_json_get",
|
||||
"text_to_mp3",
|
||||
# system_utils
|
||||
"deepcopy_data_no_sensitive_info",
|
||||
"download_and_extract",
|
||||
"get_latest_version",
|
||||
"get_os_architecture",
|
||||
"get_random",
|
||||
"is_docker",
|
||||
"restart_xiaomusic",
|
||||
"try_add_access_control_param",
|
||||
"update_version",
|
||||
"validate_proxy",
|
||||
]
|
||||
|
||||
@@ -11,9 +11,7 @@ from xiaomusic import __version__
|
||||
from xiaomusic.analytics import Analytics
|
||||
from xiaomusic.auth import AuthManager
|
||||
from xiaomusic.command_handler import CommandHandler
|
||||
from xiaomusic.config import (
|
||||
Config,
|
||||
)
|
||||
from xiaomusic.config import Config
|
||||
from xiaomusic.config_manager import ConfigManager
|
||||
from xiaomusic.const import (
|
||||
PLAY_TYPE_ALL,
|
||||
@@ -31,11 +29,9 @@ from xiaomusic.music_library import MusicLibrary
|
||||
from xiaomusic.music_url import MusicUrlHandler
|
||||
from xiaomusic.online_music import OnlineMusicService
|
||||
from xiaomusic.plugin import PluginManager
|
||||
from xiaomusic.utils import (
|
||||
chinese_to_number,
|
||||
deepcopy_data_no_sensitive_info,
|
||||
downloadfile,
|
||||
)
|
||||
from xiaomusic.utils.network_utils import downloadfile
|
||||
from xiaomusic.utils.system_utils import deepcopy_data_no_sensitive_info
|
||||
from xiaomusic.utils.text_utils import chinese_to_number
|
||||
|
||||
|
||||
class XiaoMusic:
|
||||
|
||||
Reference in New Issue
Block a user