Fix VVVVID, streamsb e nuovo server filemoon. Miglior passaggio info a trakt (se attivo)

This commit is contained in:
marco
2023-03-02 20:47:05 +01:00
parent 537f0f5f68
commit 35304d8bda
6 changed files with 59 additions and 4 deletions

View File

@@ -18,7 +18,7 @@ host = 'https://www.vvvvid.it'
# Creating persistent session
current_session = requests.Session()
# current_session.request = functools.partial(current_session.request, timeout=httptools.HTTPTOOLS_DEFAULT_DOWNLOAD_TIMEOUT)
headers = {'User-Agent': "".join([random.choice(string.ascii_letters) for y in range(random.randint(1,30))])}
headers = {'User-Agent': httptools.random_useragent()}
# Getting conn_id token from vvvvid and creating payload
login_page = host + '/user/login'

View File

@@ -130,10 +130,12 @@ def token_trakt(item):
def set_trakt_info(item):
logger.debug()
import xbmcgui
from core import scrapertools
# Envia los datos a trakt
try:
info = item.infoLabels
ids = jsontools.dump({'tmdb': info['tmdb_id'] , 'imdb': info['imdb_id'], 'slug': info['title']})
ids = jsontools.dump({'tmdb': info['tmdb_id'], 'tvdb': info.get('tvdb_id'), 'imdb': info['imdb_id'],
'slug': scrapertools.slugify(info['title'])})
xbmcgui.Window(10000).setProperty('script.trakt.ids', ids)
except:
pass

25
servers/filemoon.json Normal file
View File

@@ -0,0 +1,25 @@
{
"active": true,
"find_videos": {
"ignore_urls": [],
"patterns": [
{
"pattern": "(?:filemoon|cinegrab)\\.(?:sx|to|in|link|nl|wf|com|eu|art)/(?:e|d)/([0-9a-zA-Z]+)",
"url": "https://filemoon.sx/e/\\1"
}
]
},
"free": true,
"id": "filemoon",
"name": "filemoon",
"settings": [
{
"default": false,
"enabled": true,
"id": "black_list",
"label": "@70708",
"type": "bool",
"visible": true
}
]
}

24
servers/filemoon.py Normal file
View File

@@ -0,0 +1,24 @@
# -*- coding: utf-8 -*-
from core import httptools, support
from lib import jsunpack
from platformcode import config, logger
def test_video_exists(page_url):
logger.debug("(page_url='%s')" % page_url)
global data
data = httptools.downloadpage(page_url, cookies=False).data
if '<h1>Page not found</h1>' in data:
return False, config.get_localized_string(70449) % "filemoon"
return True, ""
def get_video_url(page_url, premium=False, user="", password="", video_password=""):
global data
packed = support.match(data, patron=r'(eval\(function\(p.*?)</').match
if packed:
data = jsunpack.unpack(packed).replace("\\", "")
video_urls = support.get_jwplayer_mediaurl(data, 'filemoon')
return video_urls

View File

@@ -3,12 +3,16 @@
"find_videos": {
"ignore_urls": [],
"patterns": [{
"pattern": "(?:streamsb|sblanh|sbembed|sbembed1|sbplay1|sbplay|pelistop|tubesb|playersb|embedsb|watchsb|streamas|sbfast|sbfull|viewsb|sbvideo|cloudemb|sbplay2|japopav|javplaya|ssbstream|sbthe|sbspeed|sbanh|sblongvu|sbchill|sbhight)\\.\\w{2,5}/(?:embed-|d/|e/)?([A-z0-9]+)",
"pattern": "(?:streamsb|sblanh|sbembed|sbembed1|sbplay1|sbplay|pelistop|tubesb|playersb|embedsb|watchsb|streamas|sbfast|sbfull|viewsb|sbvideo|cloudemb|sbplay2|japopav|javplaya|ssbstream|sbthe|sbspeed|sbanh|sblongvu|sbchill|sbhight|sbbrisk)\\.\\w{2,5}/(?:embed-|d/|e/)?([A-z0-9]+)",
"url": "https://streamas.cloud/e/\\1.html"
},
{
"pattern": "(?:cloudemb.com)/([A-z0-9]+)",
"url": "https://streamas.cloud/e/\\1.html"
},
{
"pattern": "animeworld.biz/(?:embed-|d/|e/)?([A-z0-9]+)",
"url": "https://streamas.cloud/e/\\1.html"
}
]
},

View File

@@ -9,7 +9,7 @@ def get_sources(page_url):
rand1 = "".join([random.choice(string.ascii_letters) for y in range(12)])
rand2 = "".join([random.choice(string.ascii_letters) for y in range(12)])
_0x470d0b = '{}||{}||{}||streamsb'.format(rand1, code, rand2)
sources = 'https://streamas.cloud/sources50/' + codecs.getencoder('hex')(_0x470d0b.encode())[0].decode()
sources = 'https://streamas.cloud/sources51/' + codecs.getencoder('hex')(_0x470d0b.encode())[0].decode()
# does not lite other headers different than watchsb and useragent
ret = httptools.downloadpage(sources, headers={'watchsb': 'sbstream', 'User-Agent': httptools.get_user_agent()}, replace_headers=True).json
logger.debug(ret)