mirror of
https://github.com/KimigaiiWuyi/GenshinUID.git
synced 2025-05-08 04:55:51 +08:00
✨ 使用HKFRP
下载资源文件
This commit is contained in:
parent
659c4d358c
commit
eb80dff00f
@ -4,12 +4,30 @@ from pathlib import Path
|
|||||||
from typing import List, Tuple
|
from typing import List, Tuple
|
||||||
|
|
||||||
from bs4 import BeautifulSoup
|
from bs4 import BeautifulSoup
|
||||||
|
from aiohttp import TCPConnector
|
||||||
from gsuid_core.logger import logger
|
from gsuid_core.logger import logger
|
||||||
from aiohttp.client import ClientSession
|
from aiohttp.client import ClientSession
|
||||||
|
|
||||||
from .download_url import PATH_MAP, download_file
|
from .download_url import PATH_MAP, download_file
|
||||||
|
|
||||||
MINIGG_FILE = 'http://file.microgg.cn/KimigaiiWuyi/resource/'
|
# MINIGG_FILE = 'http://file.microgg.cn/KimigaiiWuyi/resource/'
|
||||||
|
BASE_TAG = '[HKFRP]'
|
||||||
|
BASE_URL = 'http://hk-1.5gbps-2.lcf.icu:10200'
|
||||||
|
RESOURCE_FILE = f'{BASE_URL}/resource/'
|
||||||
|
WIKI_FILE = f'{BASE_URL}/wiki/'
|
||||||
|
|
||||||
|
NAMECARD_FILE = RESOURCE_FILE + 'char_namecard'
|
||||||
|
SIDE_FILE = RESOURCE_FILE + 'char_side'
|
||||||
|
STAND_FILE = RESOURCE_FILE + 'char_stand'
|
||||||
|
CHARS_FILE = RESOURCE_FILE + 'chars'
|
||||||
|
GACHA_FILE = RESOURCE_FILE + 'gacha_img'
|
||||||
|
ICON_FILE = RESOURCE_FILE + 'icon'
|
||||||
|
REL_FILE = RESOURCE_FILE + 'reliquaries'
|
||||||
|
WEAPON_FILE = RESOURCE_FILE + 'weapon'
|
||||||
|
GUIDE_FILE = WIKI_FILE + 'guide'
|
||||||
|
REF_FILE = WIKI_FILE + 'ref'
|
||||||
|
|
||||||
|
'''
|
||||||
NAMECARD_FILE = MINIGG_FILE + 'char_namecard'
|
NAMECARD_FILE = MINIGG_FILE + 'char_namecard'
|
||||||
SIDE_FILE = MINIGG_FILE + 'char_side'
|
SIDE_FILE = MINIGG_FILE + 'char_side'
|
||||||
STAND_FILE = MINIGG_FILE + 'char_stand'
|
STAND_FILE = MINIGG_FILE + 'char_stand'
|
||||||
@ -20,6 +38,8 @@ REL_FILE = MINIGG_FILE + 'reliquaries'
|
|||||||
WEAPON_FILE = MINIGG_FILE + 'weapon'
|
WEAPON_FILE = MINIGG_FILE + 'weapon'
|
||||||
GUIDE_FILE = MINIGG_FILE + 'guide'
|
GUIDE_FILE = MINIGG_FILE + 'guide'
|
||||||
REF_FILE = MINIGG_FILE + 'ref_image'
|
REF_FILE = MINIGG_FILE + 'ref_image'
|
||||||
|
'''
|
||||||
|
|
||||||
|
|
||||||
FILE_TO_PATH = {
|
FILE_TO_PATH = {
|
||||||
NAMECARD_FILE: 6,
|
NAMECARD_FILE: 6,
|
||||||
@ -59,11 +79,11 @@ async def download_all_file_from_miniggicu():
|
|||||||
list(filter(lambda x: x is not None, await asyncio.gather(*tasks)))
|
list(filter(lambda x: x is not None, await asyncio.gather(*tasks)))
|
||||||
)
|
)
|
||||||
tasks.clear()
|
tasks.clear()
|
||||||
logger.info('[minigg.icu]下载完成!')
|
logger.info(f'{BASE_TAG}下载完成!')
|
||||||
|
|
||||||
failed_list: List[Tuple[str, int, str]] = []
|
failed_list: List[Tuple[str, int, str]] = []
|
||||||
TASKS = []
|
TASKS = []
|
||||||
async with ClientSession() as sess:
|
async with ClientSession(connector=TCPConnector(verify_ssl=False)) as sess:
|
||||||
for file in [
|
for file in [
|
||||||
NAMECARD_FILE,
|
NAMECARD_FILE,
|
||||||
SIDE_FILE,
|
SIDE_FILE,
|
||||||
@ -82,7 +102,7 @@ async def download_all_file_from_miniggicu():
|
|||||||
data_list = pre_data.find_all('a')
|
data_list = pre_data.find_all('a')
|
||||||
size_list = [i for i in content_bs.strings]
|
size_list = [i for i in content_bs.strings]
|
||||||
logger.info(
|
logger.info(
|
||||||
f'[minigg.icu]数据库[{FILE_TO_NAME[file]}]中存在{len(data_list)}个内容!'
|
f'{BASE_TAG}数据库[{FILE_TO_NAME[file]}]中存在{len(data_list)}个内容!'
|
||||||
)
|
)
|
||||||
temp_num = 0
|
temp_num = 0
|
||||||
for index, data in enumerate(data_list):
|
for index, data in enumerate(data_list):
|
||||||
@ -103,7 +123,7 @@ async def download_all_file_from_miniggicu():
|
|||||||
or not is_diff
|
or not is_diff
|
||||||
):
|
):
|
||||||
logger.info(
|
logger.info(
|
||||||
f'[minigg.icu]开始下载[{FILE_TO_NAME[file]}]_[{name}]...'
|
f'{BASE_TAG}开始下载[{FILE_TO_NAME[file]}]_[{name}]...'
|
||||||
)
|
)
|
||||||
temp_num += 1
|
temp_num += 1
|
||||||
TASKS.append(
|
TASKS.append(
|
||||||
@ -118,13 +138,13 @@ async def download_all_file_from_miniggicu():
|
|||||||
else:
|
else:
|
||||||
await _download(TASKS)
|
await _download(TASKS)
|
||||||
if temp_num == 0:
|
if temp_num == 0:
|
||||||
im = f'[minigg.icu]数据库[{FILE_TO_NAME[file]}]无需下载!'
|
im = f'{BASE_TAG}数据库[{FILE_TO_NAME[file]}]无需下载!'
|
||||||
else:
|
else:
|
||||||
im = f'[minigg.icu]数据库[{FILE_TO_NAME[file]}]已下载{temp_num}个内容!'
|
im = f'{BASE_TAG}数据库[{FILE_TO_NAME[file]}]已下载{temp_num}个内容!'
|
||||||
temp_num = 0
|
temp_num = 0
|
||||||
logger.info(im)
|
logger.info(im)
|
||||||
if failed_list:
|
if failed_list:
|
||||||
logger.info(f'[minigg.icu]开始重新下载失败的{len(failed_list)}个文件...')
|
logger.info(f'{BASE_TAG}开始重新下载失败的{len(failed_list)}个文件...')
|
||||||
for url, file, name in failed_list:
|
for url, file, name in failed_list:
|
||||||
TASKS.append(
|
TASKS.append(
|
||||||
asyncio.wait_for(
|
asyncio.wait_for(
|
||||||
@ -137,4 +157,4 @@ async def download_all_file_from_miniggicu():
|
|||||||
else:
|
else:
|
||||||
await _download(TASKS)
|
await _download(TASKS)
|
||||||
if count := len(failed_list):
|
if count := len(failed_list):
|
||||||
logger.error(f'[minigg.icu]仍有{count}个文件未下载,请使用命令 `下载全部资源` 重新下载')
|
logger.error(f'{BASE_TAG}仍有{count}个文件未下载,请使用命令 `下载全部资源` 重新下载')
|
||||||
|
Loading…
x
Reference in New Issue
Block a user