change: rss_item key

This commit is contained in:
EstrellaXD
2023-08-13 15:02:57 +08:00
parent 95ff5d50c9
commit cf3df1da75
7 changed files with 12 additions and 15 deletions

View File

@@ -26,7 +26,7 @@ async def add_rss(rss: RSSItem, current_user=Depends(get_current_user)):
if not current_user:
raise UNAUTHORIZED
with RSSEngine() as engine:
result = engine.add_rss(rss.url, rss.item_path, rss.combine)
result = engine.add_rss(rss.url, rss.name, rss.aggregate)
return u_response(result)

View File

@@ -22,7 +22,7 @@ class RSSThread(ProgramStatus):
while not self.stop_event.is_set():
with DownloadClient() as client, RSSEngine() as engine:
# Analyse RSS
rss_list = engine.rss.search_combine()
rss_list = engine.rss.search_aggregate()
for rss in rss_list:
self.analyser.rss_to_data(rss, engine)
# Run RSS Engine

View File

@@ -53,9 +53,9 @@ class RSSDatabase:
def search_active(self) -> list[RSSItem]:
return self.session.exec(select(RSSItem).where(RSSItem.enabled)).all()
def search_combine(self) -> list[RSSItem]:
def search_aggregate(self) -> list[RSSItem]:
return self.session.exec(
select(RSSItem).where(and_(RSSItem.combine, RSSItem.enabled))
select(RSSItem).where(and_(RSSItem.aggregate, RSSItem.enabled))
).all()
def delete(self, _id: int):

View File

@@ -25,7 +25,7 @@ class SeasonCollector(DownloadClient):
data.added = True
data.eps_collect = True
engine.add_rss(
rss_link=data.rss_link, name=data.official_title, combine=False
rss_link=data.rss_link, name=data.official_title, aggregate=False
)
engine.bangumi.add(data)
engine.refresh_rss(self)

View File

@@ -4,16 +4,16 @@ from typing import Optional
class RSSItem(SQLModel, table=True):
id: int = Field(default=None, primary_key=True, alias="id")
item_path: Optional[str] = Field(None, alias="item_path")
name: Optional[str] = Field(None, alias="name")
url: str = Field("https://mikanani.me", alias="url")
combine: bool = Field(True, alias="combine")
aggregate: bool = Field(True, alias="aggregate")
parser: str = Field("mikan", alias="parser")
enabled: bool = Field(True, alias="enabled")
class RSSUpdate(SQLModel):
item_path: Optional[str] = Field("example path", alias="item_path")
name: Optional[str] = Field(None, alias="name")
url: Optional[str] = Field("https://mikanani.me", alias="url")
combine: Optional[bool] = Field(True, alias="combine")
aggregate: Optional[bool] = Field(True, alias="aggregate")
parser: Optional[str] = Field("mikan", alias="parser")
enabled: Optional[bool] = Field(True, alias="enabled")

View File

@@ -25,9 +25,6 @@ class RSSEngine(Database):
torrent.rss_id = rss.id
return torrents
def get_combine_rss(self) -> list[RSSItem]:
return self.rss.get_combine()
def get_rss_torrents(self, rss_id: int) -> list[Torrent]:
rss = self.rss.search_id(rss_id)
if rss:
@@ -35,11 +32,11 @@ class RSSEngine(Database):
else:
return []
def add_rss(self, rss_link: str, name: str | None = None, combine: bool = True):
def add_rss(self, rss_link: str, name: str | None = None, aggregate: bool = True):
if not name:
with RequestContent() as req:
name = req.get_rss_title(rss_link)
rss_data = RSSItem(item_path=name, url=rss_link, combine=combine)
rss_data = RSSItem(name=name, url=rss_link, aggregate=aggregate)
if self.rss.add(rss_data):
return ResponseModel(
status=True,

View File

@@ -7,7 +7,7 @@ def test_rss_engine():
with RSSEngine(e) as engine:
rss_link = "https://mikanani.me/RSS/Bangumi?bangumiId=2353&subgroupid=552"
engine.add_rss(rss_link, combine=False)
engine.add_rss(rss_link, aggregate=False)
result = engine.rss.search_active()
assert result[1].item_path == "Mikan Project - 无职转生~到了异世界就拿出真本事~"