chore: 设置格式化规则,移除无用依赖

This commit is contained in:
amtoaer
2023-11-23 00:35:02 +08:00
parent b56d694f53
commit 83b1812e7f
8 changed files with 71 additions and 40 deletions

View File

@@ -1,6 +1,6 @@
from pathlib import Path
import os
from enum import IntEnum
from pathlib import Path
DEFAULT_CONFIG_PATH = (
Path(__file__).parent / "config.json"

View File

@@ -1,4 +1,5 @@
from bilibili_api import Credential
from settings import settings

View File

@@ -1,6 +1,7 @@
from processor import process
import sys
import asyncio
import sys
from processor import process
from settings import settings

2
nfo.py
View File

@@ -1,5 +1,5 @@
from dataclasses import dataclass
import datetime
from dataclasses import dataclass
from pathlib import Path

16
poetry.lock generated
View File

@@ -1292,20 +1292,6 @@ files = [
{file = "pypng-0.20220715.0.tar.gz", hash = "sha256:739c433ba96f078315de54c0db975aee537cbc3e1d0ae4ed9aab0ca1e427e2c1"},
]
[[package]]
name = "python-dotenv"
version = "1.0.0"
description = "Read key-value pairs from a .env file and set them as environment variables"
optional = false
python-versions = ">=3.8"
files = [
{file = "python-dotenv-1.0.0.tar.gz", hash = "sha256:a8df96034aae6d2d50a4ebe8216326c61c3eb64836776504fcca410e5937a3ba"},
{file = "python_dotenv-1.0.0-py3-none-any.whl", hash = "sha256:f5971a9226b701070a4bf2c38c89e5a3f0d64de8debda981d1db98583009122a"},
]
[package.extras]
cli = ["click (>=5.0)"]
[[package]]
name = "pytz"
version = "2023.3.post1"
@@ -1771,4 +1757,4 @@ multidict = ">=4.0"
[metadata]
lock-version = "2.0"
python-versions = "^3.11"
content-hash = "cae9bcef7c4193baf5c5cf363c8160ec352d141d8ee1d3478c77a37498f15866"
content-hash = "6f295ea1cfe16df6ebdedf4a43db309f9cfd95489c108839c23fbb352139ed3e"

View File

@@ -1,15 +1,17 @@
from constants import FFMPEG_COMMAND, MediaType
from nfo import Actor, EpisodeInfo
from settings import settings
from credential import credential
from bilibili_api import favorite_list, video, HEADERS
from pathlib import Path
import httpx
from asyncio import create_subprocess_exec
from asyncio.subprocess import DEVNULL
from loguru import logger
import asyncio
import datetime
from asyncio import create_subprocess_exec
from asyncio.subprocess import DEVNULL
from pathlib import Path
import httpx
from bilibili_api import HEADERS, favorite_list, video
from loguru import logger
from constants import FFMPEG_COMMAND, MediaType
from credential import credential
from nfo import Actor, EpisodeInfo
from settings import settings
anchor = datetime.datetime.today()
@@ -38,7 +40,9 @@ async def process():
return
for favorite_id in settings.favorite_ids:
if favorite_id not in settings.path_mapper:
logger.warning(f"Favorite {favorite_id} not in path mapper, ignored.")
logger.warning(
f"Favorite {favorite_id} not in path mapper, ignored."
)
continue
await process_favorite(favorite_id)
@@ -48,8 +52,10 @@ async def process_favorite(favorite_id: int) -> None:
save_path.mkdir(parents=True, exist_ok=True)
page = 1
while True:
favorite_video_list = await favorite_list.get_video_favorite_list_content(
favorite_id, page=page, credential=credential
favorite_video_list = (
await favorite_list.get_video_favorite_list_content(
favorite_id, page=page, credential=credential
)
)
if page == 1:
logger.info(
@@ -64,7 +70,9 @@ async def process_favorite(favorite_id: int) -> None:
for idx, result in enumerate(video_result):
if isinstance(result, Exception):
logger.error(
"Failed to process video {}: {}", medias[idx]["title"], result
"Failed to process video {}: {}",
medias[idx]["title"],
result,
)
if not favorite_video_list["has_more"]:
return

View File

@@ -18,8 +18,38 @@ loguru = "0.7.2"
black = "23.11.0"
ruff = "0.1.6"
ipython = "8.17.2"
python-dotenv = "1.0.0"
[tool.black]
line-length = 80
[tool.ruff]
line-length = 80
select = [
"F", # https://beta.ruff.rs/docs/rules/#pyflakes-f
"E",
"W", # https://beta.ruff.rs/docs/rules/#pycodestyle-e-w
"I", # https://beta.ruff.rs/docs/rules/#isort-i
# "N", # https://beta.ruff.rs/docs/rules/#pep8-naming-n
"UP", # https://beta.ruff.rs/docs/rules/#pyupgrade-up
"S", # https://beta.ruff.rs/docs/rules/#flake8-bandit-s
"B", # https://beta.ruff.rs/docs/rules/#flake8-bugbear-b
"A", # https://beta.ruff.rs/docs/rules/#flake8-builtins-a
"C4", # https://beta.ruff.rs/docs/rules/#flake8-comprehensions-c4
"ICN", # https://beta.ruff.rs/docs/rules/#flake8-import-conventions-icn
"G", # https://beta.ruff.rs/docs/rules/#flake8-logging-format-g
"PIE", # https://beta.ruff.rs/docs/rules/#flake8-pie-pie
"T20", # https://beta.ruff.rs/docs/rules/#flake8-print-t20
"RET", # https://beta.ruff.rs/docs/rules/#flake8-return-ret
"SIM", # https://beta.ruff.rs/docs/rules/#flake8-simplify-sim
"TID", # https://beta.ruff.rs/docs/rules/#flake8-tidy-imports-tid
"PTH", # https://beta.ruff.rs/docs/rules/#flake8-use-pathlib-pth
"PD", # https://beta.ruff.rs/docs/rules/#pandas-vet-pd
# "PL", # https://beta.ruff.rs/docs/rules/#pylint-pl
"NPY", # https://beta.ruff.rs/docs/rules/#numpy-specific-rules-npy
"RUF100", # https://beta.ruff.rs/docs/configuration/#automatic-noqa-management
]
[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"

View File

@@ -1,8 +1,9 @@
from dataclasses import dataclass, field, fields
from dataclasses_json import DataClassJsonMixin
from pathlib import Path
from typing import Self
from dataclasses_json import DataClassJsonMixin
from constants import DEFAULT_CONFIG_PATH
@@ -46,11 +47,15 @@ class Config(DataClassJsonMixin):
def init_settings() -> Config:
if DEFAULT_CONFIG_PATH.exists():
conf = Config.load(DEFAULT_CONFIG_PATH)
else:
conf = Config()
return conf.save(DEFAULT_CONFIG_PATH).validate()
return (
(
Config.load(DEFAULT_CONFIG_PATH)
if DEFAULT_CONFIG_PATH.exists()
else Config()
)
.save(DEFAULT_CONFIG_PATH)
.validate()
)
settings = init_settings()