mirror of
https://github.com/EstrellaXD/Auto_Bangumi.git
synced 2026-04-14 18:41:04 +08:00
fix: rss.parser set to default value when subscribe Bangumi
This commit is contained in:
@@ -194,7 +194,7 @@ async def download_collection(data: Bangumi):
|
||||
@router.post(
|
||||
"/subscribe", response_model=APIResponse, dependencies=[Depends(get_current_user)]
|
||||
)
|
||||
async def subscribe(data: Bangumi):
|
||||
async def subscribe(data: Bangumi, rss: RSSItem):
|
||||
with SeasonCollector() as collector:
|
||||
resp = collector.subscribe_season(data)
|
||||
resp = collector.subscribe_season(data, parser=rss.parser)
|
||||
return u_response(resp)
|
||||
|
||||
@@ -46,12 +46,15 @@ class SeasonCollector(DownloadClient):
|
||||
)
|
||||
|
||||
@staticmethod
|
||||
def subscribe_season(data: Bangumi):
|
||||
def subscribe_season(data: Bangumi, parser: str = "mikan"):
|
||||
with RSSEngine() as engine:
|
||||
data.added = True
|
||||
data.eps_collect = True
|
||||
engine.add_rss(
|
||||
rss_link=data.rss_link, name=data.official_title, aggregate=False
|
||||
rss_link=data.rss_link,
|
||||
name=data.official_title,
|
||||
aggregate=False,
|
||||
parser=parser,
|
||||
)
|
||||
result = engine.download_bangumi(data)
|
||||
engine.bangumi.add(data)
|
||||
|
||||
@@ -42,12 +42,16 @@ export const apiDownload = {
|
||||
* 新番
|
||||
* @param bangumiData - Bangumi 数据
|
||||
*/
|
||||
async subscribe(bangumiData: BangumiRule) {
|
||||
const postData: BangumiAPI = {
|
||||
async subscribe(bangumiData: BangumiRule, rss: RSS) {
|
||||
const bangumi: BangumiAPI = {
|
||||
...bangumiData,
|
||||
filter: bangumiData.filter.join(','),
|
||||
rss_link: bangumiData.rss_link.join(','),
|
||||
};
|
||||
const postData = {
|
||||
data: bangumi,
|
||||
rss,
|
||||
};
|
||||
const { data } = await axios.post<ApiSuccess>(
|
||||
'api/v1/rss/subscribe',
|
||||
postData
|
||||
|
||||
@@ -96,7 +96,7 @@ async function subscribe() {
|
||||
if (rule.value) {
|
||||
try {
|
||||
loading.subscribe = true;
|
||||
const res = await apiDownload.subscribe(rule.value);
|
||||
const res = await apiDownload.subscribe(rule.value, rss.value);
|
||||
loading.subscribe = false;
|
||||
if (res) {
|
||||
message.success('Subscribe Success!');
|
||||
|
||||
Reference in New Issue
Block a user