From 7f2e37ec12e7a4c07b1fe8472b6d213cebf165de Mon Sep 17 00:00:00 2001 From: Kingbox <37674310+lopezvg@users.noreply.github.com> Date: Wed, 25 Jul 2018 18:51:15 +0200 Subject: [PATCH] =?UTF-8?q?Alltorrent:=20reestrucuturaci=C3=B3n=20interna?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Estandariza su estructura y deja de usar librerías obsoletas. Se basa en TMDB --- plugin.video.alfa/channels/alltorrent.json | 5 +- plugin.video.alfa/channels/alltorrent.py | 628 +++++++----------- .../media/channels/fanart/altorrent.jpg | Bin 0 -> 592684 bytes .../media/channels/thumb/altorrent.png | Bin 0 -> 64119 bytes 4 files changed, 257 insertions(+), 376 deletions(-) create mode 100644 plugin.video.alfa/resources/media/channels/fanart/altorrent.jpg create mode 100644 plugin.video.alfa/resources/media/channels/thumb/altorrent.png diff --git a/plugin.video.alfa/channels/alltorrent.json b/plugin.video.alfa/channels/alltorrent.json index c627ebbb..e2188b7b 100755 --- a/plugin.video.alfa/channels/alltorrent.json +++ b/plugin.video.alfa/channels/alltorrent.json @@ -4,7 +4,8 @@ "active": true, "adult": false, "language": ["cast"], - "thumbnail": "http://imgur.com/sLaXHvp.png", + "thumbnail": "altorrent.png", + "fanart": "altorrent.jpg", "categories": [ "torrent", "movie" @@ -22,7 +23,7 @@ "id": "include_in_global_search", "type": "bool", "label": "Incluir en busqueda global", - "default": true, + "default": false, "enabled": true, "visible": true }, diff --git a/plugin.video.alfa/channels/alltorrent.py b/plugin.video.alfa/channels/alltorrent.py index 34869367..505f5059 100755 --- a/plugin.video.alfa/channels/alltorrent.py +++ b/plugin.video.alfa/channels/alltorrent.py @@ -1,93 +1,261 @@ # -*- coding: utf-8 -*- -import os import re -import unicodedata -from threading import Thread +import sys +import urllib +import urlparse +from channelselector import get_thumb from core import httptools from core import scrapertools from core import servertools -from core import tmdb from core.item import Item from platformcode import config, logger - -__modo_grafico__ = config.get_setting('modo_grafico', "ver-pelis") - - -# Para la busqueda en bing evitando baneos - - -def browser(url): - import mechanize - - # Utilizamos Browser mechanize para saltar problemas con la busqueda en bing - br = mechanize.Browser() - # Browser options - br.set_handle_equiv(False) - br.set_handle_gzip(True) - br.set_handle_redirect(True) - br.set_handle_referer(False) - br.set_handle_robots(False) - # Follows refresh 0 but not hangs on refresh > 0 - br.set_handle_refresh(mechanize._http.HTTPRefreshProcessor(), max_time=1) - # Want debugging messages? - # br.set_debug_http(True) - # br.set_debug_redirects(True) - # br.set_debug_responses(True) - - # User-Agent (this is cheating, ok?) - # br.addheaders = [('User-agent', 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/600.7.12 (KHTML, like Gecko) Version/7.1.7 Safari/537.85.16')] - # br.addheaders =[('Cookie','SRCHD=AF=QBRE; domain=.bing.com; expires=25 de febrero de 2018 13:00:28 GMT+1; MUIDB=3B942052D204686335322894D3086911; domain=www.bing.com;expires=24 de febrero de 2018 13:00:28 GMT+1')] - # Open some site, let's pick a random one, the first that pops in mind - r = br.open(url) - response = r.read() - print response - if "img,divreturn" in response: - r = br.open("http://ssl-proxy.my-addr.org/myaddrproxy.php/" + url) - print "prooooxy" - response = r.read() - - return response - - -api_key = "2e2160006592024ba87ccdf78c28f49f" -api_fankey = "dffe90fba4d02c199ae7a9e71330c987" +from core import tmdb +from lib import generictools host = 'http://alltorrent.net/' +__modo_grafico__ = config.get_setting('modo_grafico', 'alltorrent') + def mainlist(item): logger.info() itemlist = [] - i = 0 - global i - itemlist.append(item.clone(title="[COLOR springgreen][B]Todas Las Películas[/B][/COLOR]", action="scraper", - url="http://alltorrent.net/", thumbnail="http://imgur.com/XLqPZoF.png", - fanart="http://imgur.com/v3ChkZu.jpg", contentType="movie")) - itemlist.append(item.clone(title="[COLOR springgreen] Incluyen 1080p[/COLOR]", action="scraper", - url="http://alltorrent.net/rezolucia/1080p/", thumbnail="http://imgur.com/XLqPZoF.png", - fanart="http://imgur.com/v3ChkZu.jpg", contentType="movie")) - itemlist.append(item.clone(title="[COLOR springgreen] Incluyen 720p[/COLOR]", action="scraper", - url="http://alltorrent.net/rezolucia/720p/", thumbnail="http://imgur.com/XLqPZoF.png", - fanart="http://imgur.com/v3ChkZu.jpg", contentType="movie")) - itemlist.append(item.clone(title="[COLOR springgreen] Incluyen Hdrip[/COLOR]", action="scraper", - url="http://alltorrent.net/rezolucia/hdrip/", thumbnail="http://imgur.com/XLqPZoF.png", - fanart="http://imgur.com/v3ChkZu.jpg", contentType="movie")) - itemlist.append(item.clone(title="[COLOR springgreen] Incluyen 3D[/COLOR]", action="scraper", - url="http://alltorrent.net/rezolucia/3d/", thumbnail="http://imgur.com/XLqPZoF.png", - fanart="http://imgur.com/v3ChkZu.jpg", contentType="movie")) - itemlist.append(itemlist[-1].clone(title="[COLOR floralwhite][B]Buscar[/B][/COLOR]", action="search", - thumbnail="http://imgur.com/5EBwccS.png", fanart="http://imgur.com/v3ChkZu.jpg", - contentType="movie", extra="titulo")) - itemlist.append(itemlist[-1].clone(title="[COLOR oldlace] Por Título[/COLOR]", action="search", - thumbnail="http://imgur.com/5EBwccS.png", fanart="http://imgur.com/v3ChkZu.jpg", - contentType="movie", extra="titulo")) - itemlist.append(itemlist[-1].clone(title="[COLOR oldlace] Por Año[/COLOR]", action="search", - thumbnail="http://imgur.com/5EBwccS.png", fanart="http://imgur.com/v3ChkZu.jpg", - contentType="movie", extra="año")) - itemlist.append(itemlist[-1].clone(title="[COLOR oldlace] Por Rating Imdb[/COLOR]", action="search", - thumbnail="http://imgur.com/5EBwccS.png", fanart="http://imgur.com/v3ChkZu.jpg", - contentType="movie", extra="rating")) + + thumb_pelis = get_thumb("channels_movie.png") + thumb_pelis_hd = get_thumb("channels_movie_hd.png") + thumb_series = get_thumb("channels_tvshow.png") + thumb_series_hd = get_thumb("channels_tvshow_hd.png") + thumb_buscar = get_thumb("search.png") + + itemlist.append(item.clone(title="[COLOR springgreen][B]Todas Las Películas[/B][/COLOR]", action="listado", + url=host, thumbnail=thumb_pelis, extra="pelicula")) + itemlist.append(item.clone(title="[COLOR springgreen] Incluyen 1080p[/COLOR]", action="listado", + url=host + "rezolucia/1080p/", thumbnail=thumb_pelis_hd, extra="pelicula")) + itemlist.append(item.clone(title="[COLOR springgreen] Incluyen 720p[/COLOR]", action="listado", + url=host + "rezolucia/720p/", thumbnail=thumb_pelis_hd, extra="pelicula")) + itemlist.append(item.clone(title="[COLOR springgreen] Incluyen Hdrip[/COLOR]", action="listado", + url=host + "rezolucia/hdrip/", thumbnail=thumb_pelis, extra="pelicula")) + itemlist.append(item.clone(title="[COLOR springgreen] Incluyen 3D[/COLOR]", action="listado", + url=host + "rezolucia/3d/", thumbnail=thumb_pelis_hd, extra="pelicula")) + itemlist.append(item.clone(title="[COLOR floralwhite][B]Buscar[/B][/COLOR]", action="search", thumbnail=thumb_buscar, + extra="titulo")) + itemlist.append(item.clone(title="[COLOR oldlace] Por Título[/COLOR]", action="search", thumbnail=thumb_buscar, + extra="titulo")) + itemlist.append(item.clone(title="[COLOR oldlace] Por Año[/COLOR]", action="search", thumbnail=thumb_buscar, + extra="año")) + itemlist.append(item.clone(title="[COLOR oldlace] Por Rating Imdb[/COLOR]", action="search", thumbnail=thumb_buscar, + extra="rating")) + + return itemlist + + +def listado(item): + logger.info() + itemlist = [] + + # Descarga la página + data = '' + try: + data = re.sub(r"\n|\r|\t|\s{2}|()", "", httptools.downloadpage(item.url).data) + except: + pass + + if not data: #Si la web está caída salimos sin dar error + logger.error("ERROR 01: LISTADO: La Web no responde o ha cambiado de URL: " + item.url + " / DATA: " + data) + itemlist.append(item.clone(action='', title=item.channel.capitalize() + ': ERROR 01: LISTADO:. La Web no responde o ha cambiado de URL. Si la Web está activa, reportar el error con el log')) + return itemlist #si no hay más datos, algo no funciona, pintamos lo que tenemos + + patron = '
Sd;e_KHv9c4^~11WPI$s1p eTqLOjd4mY6
zr6h|&MF}5~U|>WuW~V#c$>*-@Umy*7(Xf%NBup+j1(GzB`;n^%M=E+z;ZtiCgyRq5
zQh}9(IQR&oPw3*_2)n|B^K|R#Fl8lVNr=nmD5D5|afS|FZ?f_k_05f#a+RXP$a-v|
zL@Q||Y!ph!9@k?*((!P(kd_(G+eN?d28t*{{z`CR$>d1}GhTqPhTlh4;6lEXv#mU*
zvM(Q%EEBIQq#VqVk%E)KK@KHg2rg%~+(qSy(aqG9`)&+AciAB6q%dAp7L`nx%H)BW
z_UZK_g%U54at6asM8McATrZ=MQme=T(!4@Mre3fNrQGT7{9 *?GazWla%7NDESYt>!QWDzpz+ZTUnQNgMl
z+{h^9Etz)l%P~WVroQUIIbfc#IWD6hkzAlCTnzFe@lmL#t}@rpp`gFSz?PNK4FdER
zwXtBTZ6Mz6rL?)#&2k9H45SW`d*ry3^83g^#eo1DrW_uMRCkGjkdVZ+Xn8k9?L(#|
z0^dsMDNz^roq3&PklYAlNRL#5d@&;6^gH7zhtM#c%nf@5$}f+JUxVf`jt$ bSj
z12T3MAMz=ST)B&Mh`v3W@o)!RpbDOYidd#(GOkL+aT2=6PIN4#^+lMFo08m76>XF&
zbyXgsU?d}T4m1DD0k}v>F(Q%+Gat-)A%yRhZz2G7!D3u>)fs1jJC=FoRaPvta37WP
zn2zn2MN0@h0`YC(X0$ln@XGYbCt4op4q!V7IiJ}pC1gNy52OtY_2P3-Y?j$TA?s&6
zCNGuCBF)n(*Q)da(xJY7-( AW9_mS7nHF6HYZkCFRJlYSijC$W1Qt
z5l^^z0kC)J8JUj^?qxaWm*i8%kUr{{mftVYmtwY8@(^!OWAiGr2GJ!zcZ
zvaL8Z!Mz2(NZ=S8AGq@8dU-S5y6EA5KI&52jQqrTn8mCK$XAmY*Ojh@W6qX>vuMkH!_;aiQwCJv2
z%&0>1#nNNr+7Ef2FG7Lca!w{^Er46X^(~L9U#<