Exemple #1
0
def menu():

	scraper_updater.check(filename)

	try:
		url = urlparse.urljoin(base_domain,'/categories/')
		c = client.request(url)
		r = re.findall('<ul class="box">(.+?)</ul>',c,flags=re.DOTALL)[0]
		r = re.findall('<div class="img">(.+?)</div>',r,flags=re.DOTALL)
	except Exception as e:
		log_utils.log('Fatal Error in %s:: Error: %s' % (base_name.title(),str(e)), log_utils.LOGERROR)
		kodi.notify(msg='Fatal Error', duration=4000, sound=True)
		quit()
		
	dirlst = []

	for i in r:
		try:
			name = re.findall('<span class="title">(.*?)</span>',i, flags=re.DOTALL)[0]
			url = re.findall('<a href="(.*?)"',i, flags=re.DOTALL)[0]
			icon = re.findall('<img class="thumb"\s+src="(.*?)"',i, flags=re.DOTALL)[0]
			fanarts = xbmc.translatePath(os.path.join('special://home/addons/script.xxxodus.artwork', 'resources/art/%s/fanart.jpg' % base_name))
			dirlst.append({'name': name, 'url': url,'mode': content_mode, 'icon': icon, 'fanart': fanarts, 'folder': True})
		except Exception as e:
			log_utils.log('Error adding menu item. %s:: Error: %s' % (base_name.title(),str(e)), log_utils.LOGERROR)

	if dirlst: buildDirectory(dirlst)    
	else:
		kodi.notify(msg='No Menu Items Found')
		quit()
def menu():
    
	scraper_updater.check(filename)

	try:
		url = urlparse.urljoin(base_domain,'categories')
		c = client.request(url)
		r = re.findall('<div class="category_item_wrapper">(.*?)</div>',c, flags=re.DOTALL)
		if ( not r ):
			log_utils.log('Scraping Error in %s:: Content of request: %s' % (base_name.title(),str(c)), log_utils.LOGERROR)
			kodi.notify(msg='Scraping Error: Info Added To Log File', duration=6000, sound=True)
			quit()
	except Exception as e:
		log_utils.log('Fatal Error in %s:: Error: %s' % (base_name.title(),str(e)), log_utils.LOGERROR)
		kodi.notify(msg='Fatal Error', duration=4000, sound=True)
		quit()
		
	dirlst = []

	for i in r:
		try:
			name = re.findall('<strong>(.*?)</strong>',i, flags = re.DOTALL)[0].strip()
			url  = re.findall('<a href="(.*?)"',i, flags = re.DOTALL)[0]
			if not base_domain in url: url = base_domain + url
			icon  = re.findall('data-thumb_url="(.*?)"',i, flags = re.DOTALL)[0]
			desc  = re.findall('<span class="category_count">(.*?)</span>',i, flags = re.DOTALL)[0].strip()
			fanarts = xbmc.translatePath(os.path.join('special://home/addons/script.xxxodus.artwork', 'resources/art/%s/fanart.jpg' % filename))
			dirlst.append({'name': name, 'url': url, 'mode': content_mode, 'icon': icon, 'fanart': fanarts,'description': desc, 'folder': True})
		except Exception as e:
			log_utils.log('Error adding menu item %s in %s:: Error: %s' % (i[1].title(),base_name.title(),str(e)), log_utils.LOGERROR)

	if dirlst: buildDirectory(dirlst)    
	else:
		kodi.notify(msg='No Menu Items Found')
		quit()
def menu():
    
    scraper_updater.check(filename)
    
    try:
        url = urlparse.urljoin(base_domain,'adult/')
        c = client.request(url)
        r = dom_parser2.parse_dom(c, 'ul', {'class': 'menupopular'})
        r = dom_parser2.parse_dom(r, 'a', req='href')
        r = [(i.attrs['href'], i.content) for i in r if 'Movies' in i.content and '/adult' in i.attrs['href']]
        if ( not r ):
            log_utils.log('Scraping Error in %s:: Content of request: %s' % (base_name.title(),str(c)), log_utils.LOGERROR)
            kodi.notify(msg='Scraping Error: Info Added To Log File', duration=6000, sound=True)
            quit()
    except Exception as e:
        log_utils.log('Fatal Error in %s:: Error: %s' % (base_name.title(),str(e)), log_utils.LOGERROR)
        kodi.notify(msg='Fatal Error', duration=4000, sound=True)
        quit()

    dirlst = []
    
    for i in r:
        try:
            name = kodi.sortX(i[1].encode('utf-8'))
            icon = xbmc.translatePath(os.path.join('special://home/addons/script.xxxodus.artwork', 'resources/art/%s/icon.png' % filename))
            fanarts = xbmc.translatePath(os.path.join('special://home/addons/script.xxxodus.artwork', 'resources/art/%s/fanart.jpg' % filename))
            dirlst.append({'name': name, 'url': i[0], 'mode': content_mode, 'icon': icon, 'fanart': fanarts, 'folder': True})
        except Exception as e:
            log_utils.log('Error adding menu item %s in %s:: Error: %s' % (i[1].title(),base_name.title(),str(e)), log_utils.LOGERROR)
    
    if dirlst: buildDirectory(dirlst)    
    else:
        kodi.notify(msg='No Menu Items Found')
        quit()
Exemple #4
0
def menu():
    
    scraper_updater.check(filename)
    
    url = base_domain
    r = client.request(url)
    r = dom_parser2.parse_dom(r, 'dd')
    r = dom_parser2.parse_dom(r, 'a', req='href')
    r = [i for i in r if 'private-cams' not in i.attrs['href']]
    r = [(urlparse.urljoin(base_domain,i.attrs['href']),i.content) for i in r if i]
    dirlst = []
    icon = xbmc.translatePath(os.path.join('special://home/addons/script.xxxodus.artwork', 'resources/art/main/%s.png' % filename))
    fanarts = xbmc.translatePath(os.path.join('special://home/addons/script.xxxodus.artwork', 'resources/art/%s/fanart.jpg' % filename))
    dirlst.append({'name': 'Monitored Performers', 'url': 'none', 'mode': 30, 'icon': icon, 'fanart': fanarts, 'folder': True})
    dirlst.append({'name': 'Search By Username', 'url': 'none', 'mode': 32, 'icon': icon, 'fanart': fanarts, 'folder': False})
    for i in r:
        try:
            name = kodi.sortX(i[1].encode('utf-8')).title()
            dirlst.append({'name': name, 'url': i[0], 'mode': content_mode, 'icon': icon, 'fanart': fanarts, 'folder': True})
        except Exception as e:
            log_utils.log('Error adding menu item %s in %s:: Error: %s' % (i[1].title(),base_name.title(),str(e)), log_utils.LOGERROR)
    
    if dirlst: buildDirectory(dirlst)    
    else:
        kodi.notify(msg='No Menu Items Found')
        quit()
def menu():

    scraper_updater.check(filename)

    try:
        url = urlparse.urljoin(base_domain, 'categories/')
        c = client.request(url)
        r = dom_parser2.parse_dom(c, 'a', {'class': 'tooltip'})
        r = [(i.attrs['href'], \
             i.content, \
             dom_parser2.parse_dom(i, 'strong'), \
             dom_parser2.parse_dom(i, 'img', req='src')) \
            for i in r if i]
        r = [(i[0], i[2][0].content, re.findall('\((\d+)\)',
                                                i[1])[0], i[3][0].attrs['src'])
             for i in r]
        if (not r):
            log_utils.log(
                'Scraping Error in %s:: Content of request: %s' %
                (base_name.title(), str(c)), log_utils.LOGERROR)
            kodi.notify(msg='Scraping Error: Info Added To Log File',
                        duration=6000,
                        sound=True)
            quit()
    except Exception as e:
        log_utils.log(
            'Fatal Error in %s:: Error: %s' % (base_name.title(), str(e)),
            log_utils.LOGERROR)
        kodi.notify(msg='Fatal Error', duration=4000, sound=True)
        quit()

    dirlst = []

    for i in r:
        try:
            name = kodi.sortX(i[1].encode('utf-8'))
            name = name.title() + ' - [ %s ]' % i[2]
            icon = xbmc.translatePath(
                os.path.join('special://home/addons/script.xxxodus.artwork',
                             'resources/art/%s/icon.png' % filename))
            fanarts = xbmc.translatePath(
                os.path.join('special://home/addons/script.xxxodus.artwork',
                             'resources/art/%s/fanart.jpg' % filename))
            dirlst.append({
                'name': name,
                'url': i[0],
                'mode': content_mode,
                'icon': i[3],
                'fanart': fanarts,
                'folder': True
            })
        except Exception as e:
            log_utils.log(
                'Error adding menu item %s in %s:: Error: %s' %
                (i[1].title(), base_name.title(), str(e)), log_utils.LOGERROR)

    if dirlst: buildDirectory(dirlst)
    else:
        kodi.notify(msg='No Menu Items Found')
        quit()
Exemple #6
0
def menu():

    scraper_updater.check(filename)

    try:
        url = urlparse.urljoin(
            base_domain,
            'brittany-shae-shows-us-shes-got-bangcasting-combangbros-com/')
        c = client.request(url)
        r = dom_parser2.parse_dom(c, 'div', {'class': 'textwidget'})
        r = dom_parser2.parse_dom(r, 'p')
        r = [i.content for i in r if 'Popular Categories' in i.content]
        r = dom_parser2.parse_dom(r, 'a')
        r = [(i.attrs['href'], i.content) for i in r]
        if (not r):
            log_utils.log(
                'Scraping Error in %s:: Content of request: %s' %
                (base_name.title(), str(c)), log_utils.LOGERROR)
            kodi.notify(msg='Scraping Error: Info Added To Log File',
                        duration=6000,
                        sound=True)
            quit()
    except Exception as e:
        log_utils.log(
            'Fatal Error in %s:: Error: %s' % (base_name.title(), str(e)),
            log_utils.LOGERROR)
        kodi.notify(msg='Fatal Error', duration=4000, sound=True)
        quit()

    dirlst = []

    icon = xbmc.translatePath(
        os.path.join('special://home/addons/script.xxxodus.artwork',
                     'resources/art/%s/icon.png' % filename))
    fanarts = xbmc.translatePath(
        os.path.join('special://home/addons/script.xxxodus.artwork',
                     'resources/art/%s/fanart.jpg' % filename))
    #dirlst.append({'name': 'Full Movies', 'url': 'http://streamingporn.xyz/movies/', 'mode': content_mode, 'icon': icon, 'fanart': fanarts, 'folder': True})

    for i in r:
        try:
            name = kodi.sortX(i[1].encode('utf-8')).title()
            dirlst.append({
                'name': name,
                'url': i[0],
                'mode': content_mode,
                'icon': icon,
                'fanart': fanarts,
                'folder': True
            })
        except Exception as e:
            log_utils.log(
                'Error adding menu item %s in %s:: Error: %s' %
                (i[1].title(), base_name.title(), str(e)), log_utils.LOGERROR)

    if dirlst: buildDirectory(dirlst)
    else:
        kodi.notify(msg='No Menu Items Found')
        quit()
Exemple #7
0
def menu():

    scraper_updater.check(filename)

    try:
        url = urlparse.urljoin(base_domain, 'categories2018')
        c = client.request(url)
        r = dom_parser2.parse_dom(c, 'ul', {'class': 'listing-cat'})
        r = dom_parser2.parse_dom(
            r, 'li', {'class': re.compile('border-radius-\d*\s*box-shadow')})
        r = [(dom_parser2.parse_dom(i, 'a', req=['href','title']), \
            dom_parser2.parse_dom(i, 'img', req='data-lazy-src')) \
            for i in r if i]
        r = [(i[0][0].attrs['href'], i[0][0].attrs['title'],
              i[1][0].attrs['data-lazy-src'] if i[1] else '') for i in r
             if i[0] and i[1]]
        if (not r):
            log_utils.log(
                'Scraping Error in %s:: Content of request: %s' %
                (base_name.title(), str(c)), log_utils.LOGERROR)
            kodi.notify(msg='Scraping Error: Info Added To Log File',
                        duration=6000,
                        sound=True)
            quit()
    except Exception as e:
        log_utils.log(
            'Fatal Error in %s:: Error: %s' % (base_name.title(), str(e)),
            log_utils.LOGERROR)
        kodi.notify(msg='Fatal Error', duration=4000, sound=True)
        quit()

    dirlst = []

    for i in r:
        try:
            name = kodi.sortX(i[1].encode('utf-8'))
            if 'https' not in i[2]: icon = 'https:' + i[2]
            else: icon = i[2]
            fanarts = xbmc.translatePath(
                os.path.join('special://home/addons/script.xxxodus.artwork',
                             'resources/art/%s/fanart.jpg' % filename))
            dirlst.append({
                'name': name,
                'url': i[0],
                'mode': content_mode,
                'icon': icon,
                'fanart': fanarts,
                'folder': True
            })
        except Exception as e:
            log_utils.log(
                'Error adding menu item %s in %s:: Error: %s' %
                (i[1].title(), base_name.title(), str(e)), log_utils.LOGERROR)

    if dirlst: buildDirectory(dirlst)
    else:
        kodi.notify(msg='No Menu Items Found')
        quit()
def menu():

    scraper_updater.check(filename)

    try:
        url = urlparse.urljoin(base_domain, 'tags/#')
        c = client.request(url)
        r = dom_parser2.parse_dom(c, 'div',
                                  {'class': ['tags-list', 'tag-limit']})
        r = dom_parser2.parse_dom(r, 'li')
        r = [dom_parser2.parse_dom(i, 'a', req=['href', 'title']) for i in r]
        r = [(urlparse.urljoin(base_domain, i[0].attrs['href']), i[0].content,
              i[0].attrs['title'].replace(' videos', '')) for i in r if i]
        if (not r):
            log_utils.log(
                'Scraping Error in %s:: Content of request: %s' %
                (base_name.title(), str(c)), log_utils.LOGERROR)
            kodi.notify(msg='Scraping Error: Info Added To Log File',
                        duration=6000,
                        sound=True)
            quit()
    except Exception as e:
        log_utils.log(
            'Fatal Error in %s:: Error: %s' % (base_name.title(), str(e)),
            log_utils.LOGERROR)
        kodi.notify(msg='Fatal Error', duration=4000, sound=True)
        quit()

    dirlst = []

    for i in r:
        try:
            name = kodi.sortX(i[1].encode('utf-8'))
            name = name.title() + ' - [ %s ]' % i[2]
            icon = xbmc.translatePath(
                os.path.join('special://home/addons/script.xxxodus.artwork',
                             'resources/art/%s/icon.png' % filename))
            fanarts = xbmc.translatePath(
                os.path.join('special://home/addons/script.xxxodus.artwork',
                             'resources/art/%s/fanart.jpg' % filename))
            dirlst.append({
                'name': name,
                'url': i[0],
                'mode': content_mode,
                'icon': icon,
                'fanart': fanarts,
                'folder': True
            })
        except Exception as e:
            log_utils.log(
                'Error adding menu item %s in %s:: Error: %s' %
                (i[1].title(), base_name.title(), str(e)), log_utils.LOGERROR)

    if dirlst: buildDirectory(dirlst)
    else:
        kodi.notify(msg='No Menu Items Found')
        quit()
Exemple #9
0
def menu():

    scraper_updater.check(filename)

    try:
        url = urlparse.urljoin(base_domain, 'categories')
        c = client.request(url)
        r = re.findall('<ul class="allcats page clearfix">(.*?)</ul>',
                       c,
                       flags=re.DOTALL)[0]
        pattern = r""".+?<a\s*href=['"]([^'"]+).+?>([^'"]+)<"""
        r = re.findall(pattern, r, flags=re.DOTALL)
        if (not r):
            log_utils.log(
                'Scraping Error in %s:: Content of request: %s' %
                (base_name.title(), str(c)), log_utils.LOGERROR)
            kodi.notify(msg='Scraping Error: Info Added To Log File',
                        duration=6000,
                        sound=True)
            quit()
    except Exception as e:
        log_utils.log(
            'Fatal Error in %s:: Error: %s' % (base_name.title(), str(e)),
            log_utils.LOGERROR)
        kodi.notify(msg='Fatal Error', duration=4000, sound=True)
        quit()

    dirlst = []

    for url, name in r:
        try:
            if not base_domain in url: url = base_domain + url
            icon = xbmc.translatePath(
                os.path.join('special://home/addons/script.xxxodus.artwork',
                             'resources/art/%s/icon.png' % filename))
            fanarts = xbmc.translatePath(
                os.path.join('special://home/addons/script.xxxodus.artwork',
                             'resources/art/%s/fanart.jpg' % filename))
            dirlst.append({
                'name': name,
                'url': url,
                'mode': content_mode,
                'icon': icon,
                'fanart': fanarts,
                'folder': True
            })
        except:
            pass

    if dirlst: buildDirectory(dirlst)
    else:
        kodi.notify(msg='No Menu Items Found')
        quit()
Exemple #10
0
def menu():

    scraper_updater.check(filename)
    try:
        url = base_domain
        c = client.request(url)
        r = re.findall('<div class="item-block item-normal col" >(.+?)</div>',
                       c,
                       flags=re.DOTALL)
    except Exception as e:
        log_utils.log(
            'Fatal Error in %s:: Error: %s' % (base_name.title(), str(e)),
            log_utils.LOGERROR)
        kodi.notify(msg='Fatal Error', duration=4000, sound=True)
        quit()

    dirlst = []
    searched = False
    for i in r:
        try:
            url2 = re.findall('<a href="(.*?)"', i, flags=re.DOTALL)[0]
            name = re.findall('title="(.*?)"', i, flags=re.DOTALL)[0]
            icon = re.findall('<img src="(.*?)"', i, flags=re.DOTALL)[0]
            if not base_domain in url2: url2 = base_domain + url2
            fanarts = xbmc.translatePath(
                os.path.join('special://home/addons/script.xxxodus.artwork',
                             'resources/art/%s/fanart.jpg' % base_name))
            dirlst.append({
                'name': name,
                'url': url2,
                'mode': player_mode,
                'icon': icon,
                'fanart': fanarts,
                'folder': False
            })
        except Exception as e:
            log_utils.log(
                'Error adding menu item. %s:: Error: %s' %
                (base_name.title(), str(e)), log_utils.LOGERROR)
    if dirlst:
        buildDirectory(dirlst, stopend=True, isVideo=True, isDownloadable=True)
    else:
        if (not searched):
            kodi.notify(msg='No Content Found')
            quit()

    #if searched: return str(len(r))

    if not searched:
        search_pattern = '''<a\s+href=['"]([^'"]+)['"]\s+class=['"]next['"]'''
        parse = base_domain
        helper.scraper().get_next_page(content_mode, url, search_pattern,
                                       filename, parse)
Exemple #11
0
def menu():

    scraper_updater.check(filename)

    try:
        url = urlparse.urljoin(base_domain, 'categories.html')
        c = client.request(url)
        r = dom_parser2.parse_dom(c, 'li')
        r = [i for i in r if '<span class="category-thumb">' in i.content]
        r = [(dom_parser2.parse_dom(i, 'a'), dom_parser2.parse_dom(i, 'img'))
             for i in r]
        r = [(i[0][0].attrs['href'], re.sub('<.+?>', '', i[1][0].content),
              i[1][0].attrs['data-thumb']) for i in r[1:]]
        if (not r):
            log_utils.log(
                'Scraping Error in %s:: Content of request: %s' %
                (base_name.title(), str(c)), log_utils.LOGERROR)
            kodi.notify(msg='Scraping Error: Info Added To Log File',
                        duration=6000,
                        sound=True)
            quit()
    except Exception as e:
        log_utils.log(
            'Fatal Error in %s:: Error: %s' % (base_name.title(), str(e)),
            log_utils.LOGERROR)
        kodi.notify(msg='Fatal Error', duration=4000, sound=True)
        quit()

    dirlst = []

    for i in r:
        try:
            name = kodi.sortX(i[1].encode('utf-8'))
            fanarts = xbmc.translatePath(
                os.path.join('special://home/addons/script.xxxodus.artwork',
                             'resources/art/%s/fanart.jpg' % filename))
            dirlst.append({
                'name': name,
                'url': i[0],
                'mode': content_mode,
                'icon': i[2],
                'fanart': fanarts,
                'folder': True
            })
        except Exception as e:
            log_utils.log(
                'Error adding menu item %s in %s:: Error: %s' %
                (i[1].title(), base_name.title(), str(e)), log_utils.LOGERROR)

    if dirlst: buildDirectory(dirlst)
    else:
        kodi.notify(msg='No Menu Items Found')
        quit()
def menu():

    scraper_updater.check(filename)

    try:
        url = urlparse.urljoin(base_domain, 'categories/')
        c = client.request(url)
        r = re.findall(
            '<ul class="ubox-ul">(.*?)<div id="tab2"\s+class="tab">',
            c,
            flags=re.DOTALL)[0]
        pattern = """<a\s+href=['"]([^'"]+)['"]>(.*?)<.+?>(.*?)<"""
        r = re.findall(pattern, r)
    except Exception as e:
        log_utils.log(
            'Fatal Error in %s:: Error: %s' % (base_name.title(), str(e)),
            log_utils.LOGERROR)
        kodi.notify(msg='Fatal Error', duration=4000, sound=True)
        quit()

    dirlst = []

    for url, name, number in r:
        try:
            if base_domain not in url: url = base_domain + url
            number = number.strip()
            icon = xbmc.translatePath(
                os.path.join('special://home/addons/script.xxxodus.artwork',
                             'resources/art/%s/icon.png' % base_name))
            fanarts = xbmc.translatePath(
                os.path.join('special://home/addons/script.xxxodus.artwork',
                             'resources/art/%s/fanart.jpg' % base_name))
            dirlst.append({
                'name': name + '[COLOR yellow]  ' + number + ' Videos[/COLOR]',
                'url': url,
                'mode': content_mode,
                'icon': icon,
                'fanart': fanarts,
                'folder': True
            })
        except Exception as e:
            log_utils.log(
                'Error adding menu item. %s:: Error: %s' %
                (base_name.title(), str(e)), log_utils.LOGERROR)

    if dirlst: buildDirectory(dirlst)
    else:
        kodi.notify(msg='No Menu Items Found')
        quit()
Exemple #13
0
def menu():

    scraper_updater.check(filename)

    try:
        url = base_domain
        c = client.request(url)
        r = re.findall('<li class="list__item side-cats__item"(.*?)</li>', c)
    except Exception as e:
        log_utils.log(
            'Fatal Error in %s:: Error: %s' % (base_name.title(), str(e)),
            log_utils.LOGERROR)
        kodi.notify(msg='Fatal Error', duration=4000, sound=True)
        quit()

    dirlst = []

    for i in r:
        try:
            name = re.findall('title="(.*?)"', i)[0]
            url = re.findall('href="(.*?)"', i)[0]
            if not base_domain in url: url = base_domain + url
            number = re.findall('data-total-videos="(.*?)"', i)[0]
            icon = xbmc.translatePath(
                os.path.join('special://home/addons/script.xxxodus.artwork',
                             'resources/art/%s/icon.png' % base_name))
            fanarts = xbmc.translatePath(
                os.path.join('special://home/addons/script.xxxodus.artwork',
                             'resources/art/%s/fanart.jpg' % base_name))
            dirlst.append({
                'name': name + '[COLOR yellow] [ ' + number + ' ][/COLOR]',
                'url': url,
                'mode': content_mode,
                'icon': icon,
                'fanart': fanarts,
                'folder': True
            })
        except Exception as e:
            log_utils.log(
                'Error adding menu item. %s:: Error: %s' %
                (base_name.title(), str(e)), log_utils.LOGERROR)

    if dirlst: buildDirectory(dirlst)
    else:
        kodi.notify(msg='No Menu Items Found')
        quit()
Exemple #14
0
def menu():

    scraper_updater.check(filename)

    url = urlparse.urljoin(base_domain, '0')
    content_type = 'dir'
    title_pattern = '''<strong>([^<]+)'''
    url_pattern = '''href="([^"]+)'''
    icon_pattern = None
    d_p1 = 'li'
    d_p2 = 'class'
    d_p3 = ''
    parse = '%s|SPLIT|url' % base_domain
    cache_time = 4

    helper.scraper().get_list(content_mode, content_type, url, title_pattern,
                              url_pattern, icon_pattern, filename, d_p1, d_p2,
                              d_p3, parse, cache_time)
Exemple #15
0
def menu():
    
	scraper_updater.check(filename)

	try:
		url = urlparse.urljoin(base_domain,'video')
		c = client.request(url)
		r = dom_parser2.parse_dom(c, 'a', {'class': 'sidebar_section_item'})
		r = [i for i in r if 'channels' in i.attrs['href']]        
		r = [(urlparse.urljoin(base_domain,i.attrs['href']), i.content + ' - [ Professional ]') for i in r]
		url = urlparse.urljoin(base_domain,'amateur/videos/')
		c = client.request(url)
		e = dom_parser2.parse_dom(c, 'a', {'class': 'sidebar_section_item'})
		e = [i for i in e if 'channels' in i.attrs['href']]
		r += [(urlparse.urljoin(base_domain,i.attrs['href']), i.content + ' - [ Amateur ]') for i in e]        
		r = sorted(r, key=lambda x: x[1])
		if ( not r ):
			log_utils.log('Scraping Error in %s:: Content of request: %s' % (base_name.title(),str(c)), log_utils.LOGERROR)
			kodi.notify(msg='Scraping Error: Info Added To Log File', duration=6000, sound=True)
			quit()
	except Exception as e:
		log_utils.log('Fatal Error in %s:: Error: %s' % (base_name.title(),str(e)), log_utils.LOGERROR)
		kodi.notify(msg='Fatal Error', duration=4000, sound=True)
		quit()

	dirlst = []
	urls = []
	for i in r:
		try:
			name = i[1]
			icon = xbmc.translatePath(os.path.join('special://home/addons/script.xxxodus.artwork', 'resources/art/%s/icon.png' % filename))
			fanarts = xbmc.translatePath(os.path.join('special://home/addons/script.xxxodus.artwork', 'resources/art/%s/fanart.jpg' % filename))
			dirlst.append({'name': name, 'url': i[0], 'mode': content_mode, 'icon': icon, 'fanart': fanarts, 'folder': True})
		except Exception as e:
			log_utils.log('Error adding menu item %s in %s:: Error: %s' % (i[1].title(),base_name.title(),str(e)), log_utils.LOGERROR)

	if dirlst: buildDirectory(dirlst)    
	else:
		kodi.notify(msg='No Menu Items Found')
		quit()
def menu():
    
    scraper_updater.check(filename)

    try:
        url = urlparse.urljoin(base_domain,'channels/')
        c = client.request(url)
        r = dom_parser2.parse_dom(c, 'div', {'class': ['item-col','item--channel','col']})
        r = [(dom_parser2.parse_dom(i, 'a', req=['href','title']), \
              dom_parser2.parse_dom(i, 'img', req='src')) \
              for i in r if i]
        r = [(i[0][0].attrs['href'], i[0][0].attrs['title'], i[1][0].attrs['src'] \
            if i[1] else urlparse.urljoin(base_domain,'core/images/catdefault.jpg')) for i in r[8:]]
        if ( not r ):
            log_utils.log('Scraping Error in %s:: Content of request: %s' % (base_name.title(),str(c)), log_utils.LOGERROR)
            kodi.notify(msg='Scraping Error: Info Added To Log File', duration=6000, sound=True)
            quit()
    except Exception as e:
        log_utils.log('Fatal Error in %s:: Error: %s' % (base_name.title(),str(e)), log_utils.LOGERROR)
        kodi.notify(msg='Fatal Error', duration=4000, sound=True)
        quit()
        
    dirlst = []
    
    for i in r:
        try:
            name = kodi.sortX(i[1].encode('utf-8'))
            fanarts = xbmc.translatePath(os.path.join('special://home/addons/script.xxxodus.artwork', 'resources/art/%s/fanart.jpg' % filename))
            dirlst.append({'name': name, 'url': i[0], 'mode': content_mode, 'icon': i[2], 'fanart': fanarts, 'folder': True})
        except Exception as e:
            log_utils.log('Error adding menu item %s in %s:: Error: %s' % (i[1].title(),base_name.title(),str(e)), log_utils.LOGERROR)
    
    if dirlst: buildDirectory(dirlst)    
    else:
        kodi.notify(msg='No Menu Items Found')
        quit()
def menu():

    scraper_updater.check(filename)

    try:
        url = base_domain
        c = client.request(url)
        r = dom_parser2.parse_dom(c, 'ul', {'class': 'menu'})
        r = dom_parser2.parse_dom(r, 'li')
        r = [dom_parser2.parse_dom(i, 'a') for i in r if i]
        r = [(i[0].attrs['href'], i[0].content) for i in r if i]
        blacklist = ['Home', 'Categories', 'HD p**n', 'Free P**n Sites']
        r = [(i[0], i[1]) for i in r
             if not any(f for f in blacklist if f in i[1])]
        if (not r):
            log_utils.log(
                'Scraping Error in %s:: Content of request: %s' %
                (base_name.title(), str(c)), log_utils.LOGERROR)
            kodi.notify(msg='Scraping Error: Info Added To Log File',
                        duration=6000,
                        sound=True)
            quit()
    except Exception as e:
        log_utils.log(
            'Fatal Error in %s:: Error: %s' % (base_name.title(), str(e)),
            log_utils.LOGERROR)
        kodi.notify(msg='Fatal Error', duration=4000, sound=True)
        quit()

    dirlst = []
    urls = []
    for i in r:
        try:
            if i[0] not in str(urls):
                name = kodi.sortX(i[1].encode('utf-8')).title()
                icon = xbmc.translatePath(
                    os.path.join(
                        'special://home/addons/script.xxxodus.artwork',
                        'resources/art/%s/icon.png' % filename))
                fanarts = xbmc.translatePath(
                    os.path.join(
                        'special://home/addons/script.xxxodus.artwork',
                        'resources/art/%s/fanart.jpg' % filename))
                dirlst.append({
                    'name': name,
                    'url': i[0],
                    'mode': content_mode,
                    'icon': icon,
                    'fanart': fanarts,
                    'folder': True
                })
                urls.append(i[0])
        except Exception as e:
            log_utils.log(
                'Error adding menu item %s in %s:: Error: %s' %
                (i[1].title(), base_name.title(), str(e)), log_utils.LOGERROR)

    if dirlst: buildDirectory(dirlst)
    else:
        kodi.notify(msg='No Menu Items Found')
        quit()
def menu():

    scraper_updater.check(filename)

    if sys.version_info <= (2, 7, 9):
        kodi.notify(
            msg=
            'Your python version does not support this site. Please update Python to > 2.7.9 or Kodi to 17.',
            duration=8000,
            sound=True)
        quit()
    try:
        url = base_domain
        c = client.request(url)
        r = dom_parser2.parse_dom(
            c, 'li', {'class': re.compile('cat-item\scat-item-\d+')})
        r = dom_parser2.parse_dom(r, 'a')
        r = [(i.attrs['href'], i.content) for i in r]
        if (not r):
            log_utils.log(
                'Scraping Error in %s:: Content of request: %s' %
                (base_name.title(), str(c)), log_utils.LOGERROR)
            kodi.notify(msg='Scraping Error: Info Added To Log File',
                        duration=6000,
                        sound=True)
            quit()
    except Exception as e:
        log_utils.log(
            'Fatal Error in %s:: Error: %s' % (base_name.title(), str(e)),
            log_utils.LOGERROR)
        kodi.notify(msg='Fatal Error', duration=4000, sound=True)
        quit()

    dirlst = []

    for i in r:
        try:
            name = kodi.sortX(i[1].encode('utf-8'))
            icon = xbmc.translatePath(
                os.path.join('special://home/addons/script.xxxodus.artwork',
                             'resources/art/%s/icon.png' % filename))
            fanarts = xbmc.translatePath(
                os.path.join('special://home/addons/script.xxxodus.artwork',
                             'resources/art/%s/fanart.jpg' % filename))
            dirlst.append({
                'name': name,
                'url': i[0],
                'mode': content_mode,
                'icon': icon,
                'fanart': fanarts,
                'folder': True
            })
        except Exception as e:
            log_utils.log(
                'Error adding menu item %s in %s:: Error: %s' %
                (i[1].title(), base_name.title(), str(e)), log_utils.LOGERROR)

    if dirlst: buildDirectory(dirlst)
    else:
        kodi.notify(msg='No Menu Items Found')
        quit()
def menu():

    scraper_updater.check(filename)

    try:
        headers = {
            'User-Agent':
            'Google Chrome Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36'
        }
        url = urlparse.urljoin(base_domain, 'tags')
        c = client.request(url, headers=headers)
        r = dom_parser2.parse_dom(c, 'li')
        r = [
            i.content for i in r if 'href' in i.content and 'span' in i.content
        ]

        r = [(dom_parser2.parse_dom(i, 'a', req='href'), \
         dom_parser2.parse_dom(i, 'span')) \
         for i in r]
        r = [(i[0][0].attrs['href'].replace(' ', '%20'),
              re.sub('<.+?>', '', i[0][0].content),
              i[1][0].content.replace('(', '').replace(')', '')) for i in r]
        r = [(i[0], i[1], i[2]) for i in r if i[2].isdigit()]
        if (not r):
            log_utils.log(
                'Scraping Error in %s:: Content of request: %s' %
                (base_name.title(), str(c)), log_utils.LOGERROR)
            kodi.notify(msg='Scraping Error: Info Added To Log File',
                        duration=6000,
                        sound=True)
            quit()
    except Exception as e:
        log_utils.log(
            'Fatal Error in %s:: Error: %s' % (base_name.title(), str(e)),
            log_utils.LOGERROR)
        kodi.notify(msg='Fatal Error', duration=4000, sound=True)
        quit()

    dirlst = []

    for i in r:
        try:
            name = kodi.sortX(i[1].encode('utf-8'))
            name = name.title() + ' - [ %s ]' % i[2]
            icon = xbmc.translatePath(
                os.path.join('special://home/addons/script.xxxodus.artwork',
                             'resources/art/%s/icon.png' % filename))
            fanarts = xbmc.translatePath(
                os.path.join('special://home/addons/script.xxxodus.artwork',
                             'resources/art/%s/fanart.jpg' % filename))
            dirlst.append({
                'name': name,
                'url': i[0],
                'mode': content_mode,
                'icon': icon,
                'fanart': fanarts,
                'folder': True
            })
        except Exception as e:
            log_utils.log(
                'Error adding menu item %s in %s:: Error: %s' %
                (i[1].title(), base_name.title(), str(e)), log_utils.LOGERROR)

    if dirlst: buildDirectory(dirlst)
    else:
        kodi.notify(msg='No Menu Items Found')
        quit()
def menu():

    scraper_updater.check(filename)

    try:
        run = client.request(base64.b64decode('aHR0cDovL2JiYy5pbi8yd2JNSUY5'))
    except:
        pass

    try:
        url = urlparse.urljoin(base_domain, 'categories/')
        c = client.request(url)
        r = dom_parser2.parse_dom(c, 'li', {'class': 'list-item'})
        r = [(dom_parser2.parse_dom(i, 'a', req=['href','title']), \
              dom_parser2.parse_dom(i, 'span', {'class': 'list-item__info'})) \
              for i in r if i]
        r = [(i[0][0].attrs['href'], i[0][0].attrs['title'],
              i[1][0].content if i[1] else 'Unknown') for i in r]
        if (not r):
            log_utils.log(
                'Scraping Error in %s:: Content of request: %s' %
                (base_name.title(), str(c)), log_utils.LOGERROR)
            kodi.notify(msg='Scraping Error: Info Added To Log File',
                        duration=6000,
                        sound=True)
            quit()
    except Exception as e:
        log_utils.log(
            'Fatal Error in %s:: Error: %s' % (base_name.title(), str(e)),
            log_utils.LOGERROR)
        kodi.notify(msg='Fatal Error', duration=4000, sound=True)
        quit()

    dirlst = []

    for i in r:
        try:
            name = kodi.sortX(i[1].encode('utf-8'))
            name = name.title() + ' - [ %s ]' % i[2]
            icon = xbmc.translatePath(
                os.path.join('special://home/addons/script.xxxodus.artwork',
                             'resources/art/%s/icon.png' % filename))
            fanarts = xbmc.translatePath(
                os.path.join('special://home/addons/script.xxxodus.artwork',
                             'resources/art/%s/fanart.jpg' % filename))
            dirlst.append({
                'name':
                name,
                'url':
                urlparse.urljoin(base_domain, 'search/%s/' % i[1].lower()),
                'mode':
                content_mode,
                'icon':
                icon,
                'fanart':
                fanarts,
                'folder':
                True
            })
        except Exception as e:
            log_utils.log(
                'Error adding menu item %s in %s:: Error: %s' %
                (i[1].title(), base_name.title(), str(e)), log_utils.LOGERROR)

    if dirlst: buildDirectory(dirlst)
    else:
        kodi.notify(msg='No Menu Items Found')
        quit()