def search(keyword, **kwargs): category = kwargs.get('category', 0) subcategory = kwargs.get('subcategory', 0) filters = kwargs.get('filters', 0) page = kwargs.get('page', 0) if page > 0: r = requests.get("{}/?f={}&c={}_{}&q={}&p={}".format( Nyaa.URI, filters, category, subcategory, keyword, page)) else: r = requests.get("{}/?f={}&c={}_{}&q={}".format( Nyaa.URI, filters, category, subcategory, keyword)) soup = BeautifulSoup(r.text, 'html.parser') rows = soup.select('table tr') return utils.parse_nyaa(rows, limit=None)
def get_raw_data(self, content=None): ''' :param content: :return: ''' raw_data = RAWDataInstance() soup = BeautifulSoup(content, 'html.parser') try: ttable = soup.select('table tr') if ttable != []: try: dict_result = Utils.parse_nyaa(ttable, limit=None) for item in dict_result: size = item['size'] if 'MiB' in size: size = size.replace('MiB', 'MB') size = float(size[:-2]) elif 'GiB' in size: size = size.replace('GiB', 'GB') size = float(size[:-2]) * 1000 seed = str(item['seeders']) if seed == '0': seed = '1' leech = str(item['leechers']) if leech == '0': leech = '1' magnet_link = item['magnet'] raw_data.add_new_row(size, seed, leech, magnet_link) self.logger.debug('{0} New Entry Raw Values: {1:7} {2:>4}/{3:4} {4}'.format( self.name, str(size), str(seed), str(leech), magnet_link)) except Exception as err: raise WebScraperParseError(self.name, 'ParseError: unable to retrieve values: {0}'.format(err), traceback.format_exc()) except Exception as err: raise WebScraperContentError(self.name, 'ContentError: unable to retrieve values {0}'.format(err), traceback.format_exc()) return raw_data
def search(keyword, **kwargs): request = requests.get("{}/search{}".format( SukebeiPantsu.BASE_URL, utils.query_builder(keyword, kwargs))) return request.json()
def news(number_of_results): r = requests.get("http://sukebei.nyaa.si/") soup = BeautifulSoup(r.text, 'html.parser') rows = soup.select('table tr') return utils.parse_sukebei(rows, limit=number_of_results + 1)
def get_user(username): r = requests.get("http://sukebei.nyaa.si/user/{}".format(username)) soup = BeautifulSoup(r.text, 'html.parser') return utils.parse_nyaa(soup.select('table tr'), limit=None)
def get(id): r = requests.get("http://sukebei.nyaa.si/view/{}".format(id)) soup = BeautifulSoup(r.text, 'html.parser') content = soup.findAll("div", {"class": "panel", "id": None}) return utils.parse_single(content)
def news(number_of_results): r = requests.get(Nyaa.URI) soup = BeautifulSoup(r.text, 'html.parser') rows = soup.select('table tr') return utils.parse_nyaa(rows, limit=number_of_results + 1)
def get_user(username): r = requests.get("{}/user/{}".format(Nyaa.URI, username)) soup = BeautifulSoup(r.text, 'html.parser') return utils.parse_nyaa(soup.select('table tr'), limit=None)
import requests import urllib.parse from bs4 import BeautifulSoup from NyaaPy.utils import Utils utils = Utils() class Nyaa: def __init__(self): self.URI = "http://nyaa.si" def search(self, keyword, **kwargs): user = kwargs.get('user', None) category = kwargs.get('category', 0) subcategory = kwargs.get('subcategory', 0) filters = kwargs.get('filters', 0) page = kwargs.get('page', 0) if user: user_uri = "user/{}".format(user) else: user_uri = "" if page > 0: r = requests.get("{}/{}?f={}&c={}_{}&q={}&p={}".format( self.URI, user_uri, filters, category, subcategory, keyword, page)) else: r = requests.get("{}/{}?f={}&c={}_{}&q={}".format( self.URI, user_uri, filters, category, subcategory, keyword))