Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 12 additions & 12 deletions plugin.video.alfa/channels/cinecalidad.py
Original file line number Diff line number Diff line change
Expand Up @@ -70,10 +70,10 @@
'get_quality': {},
'get_quality_rgx': [],
'next_page': {},
'next_page_rgx': [['\/page\/\d+', '/page/%s/']],
'next_page_rgx': [[r'\/page\/\d+', '/page/%s/']],
'last_page': dict([('find', [{'tag': ['nav'], 'class': ['pagination']}]),
('find_all',[{'tag': ['a'], '@POS': [-2]}]),
('get_text', [{'tag': '', '@STRIP': True, '@TEXT': '(\d+)'}])]),
('get_text', [{'tag': '', '@STRIP': True, '@TEXT': r'(\d+)'}])]),
'year': {},
'season_episode': {},
'seasons': {},
Expand All @@ -86,14 +86,14 @@
'episode_clean': [],
'plot': {},
'findvideos': {'find_all': [{'tag': ['a'], 'class': ['inline-block']}]},
'title_clean': [['(?i)TV|Online|(4k-hdr)|(fullbluray)|4k| - 4k|(3d)|miniserie|\s*imax', ''],
['(?i)[\[|\(]?\d{3,4}p[\]|\)]?|[\[|\(]?(?:4k|3d|uhd|hdr)[\]|\)]?', ''],
['(?i)[-|\(]?\s*HDRip\)?|microHD|\(?BR-LINE\)?|\(?HDTS-SCREENER\)?', ''],
['(?i)\(?BDRip\)?|\(?BR-Screener\)?|\(?DVDScreener\)?|\(?TS-Screener\)?|[\(|\[]\S*\.*$', ''],
['(?i)Castellano-*|Ingl.s|Trailer|Audio|\(*SBS\)*|\[*\(*dvd\s*r\d*\w*\]*\)*|[\[|\(]*dv\S*[\)|\]]*', ''],
['(?i)Dual|Subt\w*|\(?Reparado\)?|\(?Proper\)?|\(?Latino\)?|saga(?:\s*del)?', ''],
['(?i)(?:\s*–)?\s*temp.*?\d+.*', ''], ['\d?\d?&#.*', ''], ['\d+[x|×]\d+.*', ''],
['[\(|\[]\s*[\)|\]]', ''], ['(?i)(?:libro|volumen)?\s+\d{1,2}$', '']],
'title_clean': [[r'(?i)TV|Online|(4k-hdr)|(fullbluray)|4k| - 4k|(3d)|miniserie|\s*imax', ''],
[r'(?i)[\[|\(]?\d{3,4}p[\]|\)]?|[\[|\(]?(?:4k|3d|uhd|hdr)[\]|\)]?', ''],
[r'(?i)[-|\(]?\s*HDRip\)?|microHD|\(?BR-LINE\)?|\(?HDTS-SCREENER\)?', ''],
[r'(?i)\(?BDRip\)?|\(?BR-Screener\)?|\(?DVDScreener\)?|\(?TS-Screener\)?|[\(|\[]\S*\.*$', ''],
[r'(?i)Castellano-*|Ingl.s|Trailer|Audio|\(*SBS\)*|\[*\(*dvd\s*r\d*\w*\]*\)*|[\[|\(]*dv\S*[\)|\]]*', ''],
[r'(?i)Dual|Subt\w*|\(?Reparado\)?|\(?Proper\)?|\(?Latino\)?|saga(?:\s*del)?', ''],
[r'(?i)(?:\s*–)?\s*temp.*?\d+.*', ''], [r'\d?\d?&#.*', ''], [r'\d+[x|×]\d+.*', ''],
[r'[\(|\[]\s*[\)|\]]', ''], [r'(?i)(?:libro|volumen)?\s+\d{1,2}$', '']],
'quality_clean': [['(?i)proper|unrated|directors|cut|repack|internal|real|extended|masted|docu|super|duper|amzn|uncensored|hulu', '']],
'language_clean': [],
'url_replace': [],
Expand Down Expand Up @@ -310,7 +310,7 @@ def list_all_matches(item, matches_int, **AHkwargs):
try:
elem_json['url'] = elem.a.get("href", "")
if '/serie' in elem_json['url']: continue
if scrapertools.find_single_match(elem_json['url'], "\d+x\d+") or "episode" in elem_json['url']: continue
if scrapertools.find_single_match(elem_json['url'], r"\d+x\d+") or "episode" in elem_json['url']: continue
if sufix[item.site or 0] and sufix[item.site or 0] not in elem_json['url']:
elem_json['url'] += sufix[item.site or 0]

Expand All @@ -322,7 +322,7 @@ def list_all_matches(item, matches_int, **AHkwargs):

if not elem_json.get('year'):
elem_json['year'] = '-'
if elem.find('div'): elem_json['year'] = scrapertools.find_single_match(elem.find('div').get_text(strip=True), '\d{4}') or '-'
if elem.find('div'): elem_json['year'] = scrapertools.find_single_match(elem.find('div').get_text(strip=True), r'\d{4}') or '-'

elem_json['thumbnail'] = re.sub(r'(-\d+x\d+.jpg)', '.jpg', elem.find('img', class_="w-full").get("data-src", "") \
or elem.find('img', class_="w-full").get("src", ""))
Expand Down
12 changes: 6 additions & 6 deletions plugin.video.alfa/channels/cuevana2.py
Original file line number Diff line number Diff line change
Expand Up @@ -49,13 +49,13 @@
'get_quality': {},
'get_quality_rgx': '',
'next_page': {},
'next_page_rgx': [['\/page\/\d+', '/page/%s']],
'next_page_rgx': [[r'\/page\/\d+', '/page/%s']],
'last_page': dict([('find', [{'tag': ['ul'], 'class': ['pagination']},
{'tag': ['span'], 'class': ['visually-hidden'], 'string': re.compile('(?i)Last')}]),
('find_previous', [{'tag': ['a'], 'class': ['page-link'], '@ARG': 'href', '@TEXT': '(\d+)'}])]),
('find_previous', [{'tag': ['a'], 'class': ['page-link'], '@ARG': 'href', '@TEXT': r'(\d+)'}])]),
'year': dict([('find', [{'tag': ['div'], 'class': ['MovieItem_data__BdOz3', 'SerieItem_data__LFJR_']},
{'tag': ['span']}]),
('get_text', [{'strip': True, '@TEXT': '(\d{4})'}])]),
('get_text', [{'strip': True, '@TEXT': r'(\d{4})'}])]),
'season_episode': dict([('find', [{'tag': ['div'], 'class': ['EpisodeItem_data__jsvqZ']},
{'tag': ['span']}]),
('get_text', [{'tag': '', '@STRIP': True}])]),
Expand All @@ -72,8 +72,8 @@
'plot': {},
'findvideos': dict([('find', [{'tag': ['script'], 'id': ['__NEXT_DATA__']}]),
('get_text', [{'tag': '', '@STRIP': False, '@JSON': 'props,pageProps,episode/post,players|DEFAULT'}])]),
'title_clean': [['(?i)TV|Online|(4k-hdr)|(fullbluray)|4k| - 4k|(3d)|miniserie|\s*\(\d{4}\)', ''],
['[\(|\[]\s*[\)|\]]', '']],
'title_clean': [[r'(?i)TV|Online|(4k-hdr)|(fullbluray)|4k| - 4k|(3d)|miniserie|\s*\(\d{4}\)', ''],
[r'[\(|\[]\s*[\)|\]]', '']],
'quality_clean': [['(?i)proper|unrated|directors|cut|repack|internal|real|extended|masted|docu|super|duper|amzn|uncensored|hulu', '']],
'language_clean': [],
'url_replace': [],
Expand Down Expand Up @@ -312,7 +312,7 @@ def play(item):
return []
soup = soup.find("script", string=re.compile('start.onclick')).string

item.url = scrapertools.find_single_match(str(soup), "url\s*=\s*'([^']+)'")
item.url = scrapertools.find_single_match(str(soup), r"url\s*=\s*'([^']+)'")
if item.url:
itemlist = servertools.get_servers_itemlist([item])
else:
Expand Down
11 changes: 6 additions & 5 deletions plugin.video.alfa/channels/dontorrent.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,10 @@
canonical = {
'channel': 'dontorrent',
'host': config.get_setting("current_host", 'dontorrent', default=''),
'host_alt': ["https://dontorrent.prof/", "https://lilatorrent.com/", "https://todotorrents.org/", "https://elitedivx.net/"],
'host_alt_new': ["https://dontorrent.prof/"],
'host_black_list': ["https://dontorrent.club/", "https://www21.dontorrent.link/",
'host_alt': ["https://dontorrent.promo/", "https://lilatorrent.com/", "https://todotorrents.org/", "https://elitedivx.net/"],
'host_alt_new': ["https://dontorrent.promo/"],
'host_black_list': ["https://dontorrent.info/",
"https://dontorrent.prof/", "https://dontorrent.club/", "https://www21.dontorrent.link/",
"https://dontorrent.sarl/", "https://dontorrent.gripe/", "https://reinventorrent.org/",
"https://dontorrent.phd/", "https://dontorrent.live/", "https://dontorrent.kiwi/",
"https://dontorrent.kids/", "https://dontorrent.onl/", "https://dontorrent.istanbul/",
Expand Down Expand Up @@ -772,8 +773,8 @@ def findvideos_matches(item, matches_int, langs, response, **AHkwargs):
if '3d' in elem_json['url'].lower() and '3d' not in elem_json['quality'].lower():
elem_json['quality'] = '%s,3d' % elem_json['quality']

if elem.find('b', class_='bold', string=re.compile('Clave:\s*')):
elem_json['password'] = elem.find('b', class_='bold', string=re.compile('Clave:\s*'))\
if elem.find('b', class_='bold', string=re.compile(r'Clave:\s*')):
elem_json['password'] = elem.find('b', class_='bold', string=re.compile(r'Clave:\s*'))\
.find_next('a').get('data-content', '')
elem_json['password'] = item.password = scrapertools.find_single_match(elem_json['password'], "value='([^']+)'")
except Exception:
Expand Down
46 changes: 23 additions & 23 deletions plugin.video.alfa/channels/grantorrent.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
"https://www1.grantorrent.wf/", "https://www1.grantorrent.pm/", "https://grantorrent.zip/",
'https://grantorrent.bz/', 'https://grantorrent.fi/', 'https://grantorrent.si/',
'https://grantorrent.re/', 'https://grantorrent.ac/', 'https://grantorrent.ch/'],
'pattern': '<div\s*class="flex[^>]*>\s*<a\s*href="([^"]+)"[^>]*>\s*.nicio\s*<',
'pattern': r'<div\s*class="flex[^>]*>\s*<a\s*href="([^"]+)"[^>]*>\s*.nicio\s*<',
'set_tls': True, 'set_tls_min': True, 'retries_cloudflare': 1, 'forced_proxy_ifnot_assistant': forced_proxy_opt,
'CF': False, 'CF_test': False, 'alfa_s': True, 'renumbertools': False
}
Expand All @@ -57,20 +57,20 @@
'categories': {},
'search': {},
'get_language': {'find': [{'tag': ['img'], '@ARG': 'src'}]},
'get_language_rgx': '(?:flags\/|\/icono_(\w+))\.(?:png|jpg|jpeg|webp)',
'get_language_rgx': r'(?:flags\/|\/icono_(\w+))\.(?:png|jpg|jpeg|webp)',
'get_quality': dict([('find', [{'tag': ['ul'], 'class': True}]),
('get_text', [{'tag': '', '@STRIP': True}])]),
'get_quality_rgx': [],
'next_page': {},
'next_page_rgx': [['\/page\/\d+', '/page/%s/']],
'next_page_rgx': [[r'\/page\/\d+', '/page/%s/']],
'last_page': dict([('find', [{'tag': ['nav'], 'role': ['navigation']}]),
('find_all', [{'tag': ['a'], '@POS': [-1], '@ARG': 'href', '@TEXT': '\/(\d+)\/'}])]),
('find_all', [{'tag': ['a'], '@POS': [-1], '@ARG': 'href', '@TEXT': r'\/(\d+)\/'}])]),
'year': {},
'season_episode': {},
'seasons': {},
'season_num': {},
'seasons_search_num_rgx': [['(?i)-temp\w*-(\d+)\/$', None]],
'seasons_search_qty_rgx': [['(?i)(?:Temporada|Miniserie)(?:-(.*?)(?:\.|\/|-$|$))', None]],
'seasons_search_num_rgx': [[r'(?i)-temp\w*-(\d+)\/$', None]],
'seasons_search_qty_rgx': [[r'(?i)(?:Temporada|Miniserie)(?:-(.*?)(?:\.|\/|-$|$))', None]],
'episode_url': '',
'episodes': dict([('find', [{'tag': ['tbody'], 'class': ['bg-neutral-800']}]),
('find_all', [{'tag': ['tr']}])]),
Expand All @@ -79,20 +79,20 @@
'plot': {},
'findvideos': dict([('find', [{'tag': ['tbody'], 'class': ['bg-neutral-800']}]),
('find_all', [{'tag': ['tr']}])]),
'title_clean': [['(?i)TV|Online|(4k-hdr)|(fullbluray)|4k| - 4k|(3d)|miniserie|\s*imax', ''],
['(?i)[\[|\(]?\d{3,4}p[\]|\)]?|[\[|\(]?(?:4k|3d|uhd|hdr)[\]|\)]?', ''],
['(?i)[-|\(]?\s*HDRip\)?|microHD|\(?BR-LINE\)?|\(?HDTS-SCREENER\)?', ''],
['(?i)\(?BDRip\)?|\(?BR-Screener\)?|\(?DVDScreener\)?|\(?TS-Screener\)?|[\(|\[]\S*\.*$', ''],
['(?i)Castellano-*|Ingl.s|Trailer|Audio|\(*SBS\)*|\[*\(*dvd\s*r\d*\w*\]*\)*|[\[|\(]*dv\S*[\)|\]]*', ''],
['(?i)Dual|Subt\w*|\(?Reparado\)?|\(?Proper\)?|\(?Latino\)?|saga(?:\s*del)?', ''],
['(?i)(?:\s*&#8211;)?\s*temp.*?\d+.*', ''], ['\d?\d?&#.*', ''], ['\d+[x|×]\d+.*', ''],
['[\(|\[]\s*[\)|\]]', ''], ['(?i)(?:libro|volumen)?\s+\d{1,2}$', '']],
'quality_clean': [['(?i)proper|unrated|directors|cut|repack|internal|real|extended|masted|docu|super|duper|amzn|uncensored|hulu', '']],
'title_clean': [[r'(?i)TV|Online|(4k-hdr)|(fullbluray)|4k| - 4k|(3d)|miniserie|\s*imax', ''],
[r'(?i)[\[|\(]?\d{3,4}p[\]|\)]?|[\[|\(]?(?:4k|3d|uhd|hdr)[\]|\)]?', ''],
[r'(?i)[-|\(]?\s*HDRip\)?|microHD|\(?BR-LINE\)?|\(?HDTS-SCREENER\)?', ''],
[r'(?i)\(?BDRip\)?|\(?BR-Screener\)?|\(?DVDScreener\)?|\(?TS-Screener\)?|[\(|\[]\S*\.*$', ''],
[r'(?i)Castellano-*|Ingl.s|Trailer|Audio|\(*SBS\)*|\[*\(*dvd\s*r\d*\w*\]*\)*|[\[|\(]*dv\S*[\)|\]]*', ''],
[r'(?i)Dual|Subt\w*|\(?Reparado\)?|\(?Proper\)?|\(?Latino\)?|saga(?:\s*del)?', ''],
[r'(?i)(?:\s*&#8211;)?\s*temp.*?\d+.*', ''], [r'\d?\d?&#.*', ''], [r'\d+[x|×]\d+.*', ''],
[r'[\(|\[]\s*[\)|\]]', ''], [r'(?i)(?:libro|volumen)?\s+\d{1,2}$', '']],
'quality_clean': [[r'(?i)proper|unrated|directors|cut|repack|internal|real|extended|masted|docu|super|duper|amzn|uncensored|hulu', '']],
'language_clean': [],
'url_replace': [],
'controls': {'min_temp': min_temp, 'url_base64': True, 'add_video_to_videolibrary': True, 'cnt_tot': 15,
'get_lang': False, 'reverse': False, 'videolab_status': True, 'tmdb_extended_info': True, 'seasons_search': True,
'host_torrent': host_torrent, 'duplicates': [['(?i)(?:-temp\w*)?-\d+\/$', '']]},
'host_torrent': host_torrent, 'duplicates': [[r'(?i)(?:-temp\w*)?-\d+\/$', '']]},
'timeout': timeout}
AlfaChannel = DictionaryAllChannel(host, movie_path=movie_path, tv_path=tv_path, canonical=canonical, finds=finds,
idiomas=IDIOMAS, language=language, list_language=list_language, list_servers=list_servers,
Expand Down Expand Up @@ -246,14 +246,14 @@ def episodesxseason_matches(item, matches_int, **AHkwargs):
try:
season = 0
sxe = td.get_text(strip=True)
if scrapertools.find_single_match(sxe, '(?i)temp\w*\s+(\d+)\s+comp\w*'):
season = scrapertools.find_single_match(sxe, '(?i)temp\w*\s+(\d+)\s+comp\w*')
if scrapertools.find_single_match(sxe, r'(?i)temp\w*\s+(\d+)\s+comp\w*'):
season = scrapertools.find_single_match(sxe, r'(?i)temp\w*\s+(\d+)\s+comp\w*')
episode = 1
elif scrapertools.find_single_match(sxe, '(?i)(\d+)x(\d+)'):
season, episode = scrapertools.find_single_match(sxe, '(?i)(\d+)x(\d+)')
elif scrapertools.find_single_match(sxe, r'(?i)(\d+)x(\d+)'):
season, episode = scrapertools.find_single_match(sxe, r'(?i)(\d+)x(\d+)')
else:
sxe = elem.find_all('td')[-1].a.get('href', '')
season, episode = scrapertools.find_single_match(sxe, '(?i)\[Cap\.(\d{1})(\d{2})\]')
season, episode = scrapertools.find_single_match(sxe, r'(?i)\[Cap\.(\d{1})(\d{2})\]')
elem_json['quality'] = '*%s' % td.get_text(strip=True).replace('N/A', '')\
.replace('HDRip', 'HDTV').replace('720p', 'HDTV-720p').replace('Dvdrip', 'HDTV') or 'HDTV'
if len(season) > 2:
Expand All @@ -262,8 +262,8 @@ def episodesxseason_matches(item, matches_int, **AHkwargs):
elem_json['season'] = int(season or 1)
elem_json['episode'] = int(episode or 1)
if elem_json['season'] != item.contentSeason: break
if scrapertools.find_single_match(sxe, '(?i)\d+x\d+-(\d+)'):
elem_json['title'] = 'al %s' % scrapertools.find_single_match(sxe, '(?i)\d+x\d+-(\d+)')
if scrapertools.find_single_match(sxe, r'(?i)\d+x\d+-(\d+)'):
elem_json['title'] = 'al %s' % scrapertools.find_single_match(sxe, r'(?i)\d+x\d+-(\d+)')
except:
logger.error(td)
logger.error(traceback.format_exc())
Expand Down
4 changes: 2 additions & 2 deletions plugin.video.alfa/channels/hdfull.py
Original file line number Diff line number Diff line change
Expand Up @@ -34,10 +34,10 @@
'channel': 'hdfull',
'host': config.get_setting("current_host", 'hdfull', default=''),
"host_alt": ["https://hdfull.today/", "https://hdfull.sbs/",
"https://hdfull.one/", "https://hdfull.org/"],
"https://www2.hdfull.one/", "https://hdfull.one/", "https://hdfull.org/"],
"host_alt_main": 2,
"host_verification": '%slogin',
"host_black_list": ["https://www2.hdfull.one/", "https://hd-full.biz/", "https://hdfull.cfd/",
"host_black_list": ["https://hd-full.biz/", "https://hdfull.cfd/",
"https://hdfull.help/", "https://hdfull.cv/", "https://hdfull.blog/",

"https://hd-full.me/",
Expand Down
Loading