diff --git a/anime_search/base.py b/anime_search/base.py
index 558d1a9..4839d74 100644
--- a/anime_search/base.py
+++ b/anime_search/base.py
@@ -19,7 +19,7 @@ def get_default_config(self):
return {
'short_name': self.name,
'enabled': True,
- 'base_url': 'https://nyaa.si/?page=rss&q=My+Hero+Academia+S3+1080p&u=Golumpa'
+ 'base_url': 'https://nyaa.si/?page=rss&q='
}
def configure(self, config):
@@ -32,8 +32,8 @@ def setup_handlers(self, adapter):
def setup_schedules(self, adapter):
pass
- def fetch_anime(self):
- url = self.config.get('base_url')
+ def fetch_anime(self, anime):
+ url = "{}{}".format(self.config.get('base_url'), anime)
response = requests.get(url)
return response.text
@@ -42,8 +42,16 @@ def parse_anime_search(self, text):
def on_anime(self, update, *args, **kwargs):
+ def g_list(l):
+ if not l:
+ return []
+ elif isinstance(l, list):
+ return l
+ else:
+ return [l]
+
message = get_message(update)
- fetched_response = self.fetch_anime()
+ fetched_response = self.fetch_anime(anime=message.text)
data = self.parse_anime_search(fetched_response)
rss = data.get('rss', None)
@@ -58,19 +66,25 @@ def on_anime(self, update, *args, **kwargs):
log.error("No channel")
return
- item = channel.get('item', None)
- if item is None:
+ items = g_list(channel.get('item', None))
+ if items is None or len(items) == 0:
message.reply_text(text="❌ Invalid response.")
log.error("No item")
return
responses = []
- title = item.get('title', '').strip()
- responses.append("{}".format(title))
- size = item.get('nyaa:size', '').strip()
- responses.append("\n\nSize: {} | ".format(size))
- link = item.get('link','').strip()
- responses.append("Download: Torrent".format(link))
- release_date = item.get('pubDate','').strip()
- responses.append("\nDate: {}".format(release_date))
- message.reply_text(text="".join(responses), parse_mode='HTML')
+ for item in items:
+ response = []
+ title = item.get('title', '').strip()
+ response.append("➡ {}".format(title))
+ size = item.get('nyaa:size', '').strip()
+ response.append("\n\nSize: {} | ".format(size))
+ link = item.get('link','').strip()
+ response.append("Download: Torrent 🔗".format(link))
+ release_date = item.get('pubDate','').strip()
+ response.append("\nDate: {}\n".format(release_date))
+
+ responses.append("".join(response))
+
+ for i in range(0, len(responses), 10):
+ message.reply_text(text="\n".join(responses[i:i+10]), parse_mode='HTML')