diff --git a/NyaaPy/nyaa.py b/NyaaPy/nyaa.py index ed0de3d..f27f708 100644 --- a/NyaaPy/nyaa.py +++ b/NyaaPy/nyaa.py @@ -1,6 +1,7 @@ import requests import xmltodict - +import json +import collections class Nyaa(): def search(keyword): @@ -9,10 +10,16 @@ class Nyaa(): request = requests.get(nyaa_baseurl + keyword) response = xmltodict.parse(request.text) + results = [] + try: - results = response['rss']['channel']['item'] + if type(response['rss']['channel']['item']) is collections.OrderedDict: + results.append(response['rss']['channel']['item']) + else: + results = response['rss']['channel']['item'] + except KeyError as ex: - results = {} + results = [] return results @@ -20,12 +27,18 @@ class NyaaPantsu(): def search(keyword): nyaapantsu_baseurl = "https://nyaa.pantsu.cat/feed?c=_&s=0&max=99999&userID=0&q=" - request = requests.get(nyaapantsu_baseurl + keyword) + request = requests.get(nyaa_baseurl + keyword) response = xmltodict.parse(request.text) + results = [] + try: - results = response['rss']['channel']['item'] + if type(response['rss']['channel']['item']) is collections.OrderedDict: + results.append(response['rss']['channel']['item']) + else: + results = response['rss']['channel']['item'] + except KeyError as ex: - results = {} + results = [] return results diff --git a/setup.py b/setup.py index 1ffeb54..290f21a 100644 --- a/setup.py +++ b/setup.py @@ -1,7 +1,7 @@ from setuptools import setup, find_packages setup(name='nyaapy', - version='0.3', + version='0.3.1', url='https://github.com/juanjosalvador/nyaapy', download_url = 'https://github.com/juanjosalvador/nyaapy/archive/0.1.tar.gz', license='MIT', diff --git a/src/nyaa.py b/src/nyaa.py index a99782d..9f1454d 100644 --- a/src/nyaa.py +++ b/src/nyaa.py @@ -1,6 +1,7 @@ import requests import xmltodict - +import json +import collections class Nyaa: ''' @@ -14,10 +15,16 @@ class Nyaa: request = requests.get(nyaa_baseurl + keyword) response = xmltodict.parse(request.text) + results = [] + try: - results = response['rss']['channel']['item'] - except Exception as ex: - print(ex) + if type(response['rss']['channel']['item']) is collections.OrderedDict: + results.append(response['rss']['channel']['item']) + else: + results = response['rss']['channel']['item'] + + except KeyError as ex: + results = [] return results @@ -32,6 +39,16 @@ class NyaaPantsu: request = requests.get(nyaa_baseurl + keyword) response = xmltodict.parse(request.text) - results = response['rss']['channel']['item'] + + results = [] + + try: + if type(response['rss']['channel']['item']) is collections.OrderedDict: + results.append(response['rss']['channel']['item']) + else: + results = response['rss']['channel']['item'] + + except KeyError as ex: + results = [] return results diff --git a/tests/test.py b/tests/test.py index dbc0dcf..ae4202d 100644 --- a/tests/test.py +++ b/tests/test.py @@ -1,8 +1,9 @@ from NyaaPy.nyaa import Nyaa from NyaaPy.nyaa import NyaaPantsu +import json # Nyaa.si results -nyaa_query = Nyaa.search('illo que pasa') +nyaa_query = Nyaa.search('koe no katachi 1080') if len(nyaa_query) > 0: for result in nyaa_query: @@ -11,7 +12,7 @@ else: print('Nothing here!') # Nyaa.pantsu.cat results -pantsu_query = NyaaPantsu.search('new game') +pantsu_query = NyaaPantsu.search('new game!!') if len(pantsu_query) > 0: for result in pantsu_query: print(result['title'])