Update gmobi.py

This commit is contained in:
Intel1
2017-10-09 09:27:32 -05:00
committed by GitHub
parent 34011ecc77
commit 4852201066
+48 -28
View File
@@ -3,24 +3,21 @@
# Alfa # Alfa
# ------------------------------------------------------------ # ------------------------------------------------------------
import urlparse,urllib2,urllib,re import re
import os, sys
from core import httptools from core import httptools
from core import tmdb
from core import jsontools as json
from core import scrapertools from core import scrapertools
from core import servertools from core import servertools
from core import tmdb
from core.item import Item from core.item import Item
from platformcode import config, logger from platformcode import logger
def mainlist(item): def mainlist(item):
logger.info() logger.info()
itemlist = [] itemlist = list()
itemlist.append(item.clone(title="Novedades", action="peliculas", url="http://gnula.mobi/")) itemlist.append(item.clone(title="Novedades", action="peliculas", url="http://gnula.mobi/"))
itemlist.append(item.clone(title="Castellano", action="peliculas", itemlist.append(item.clone(title="Castellano", action="peliculas",
url="http://www.gnula.mobi/tag/esp)anol/")) url="http://www.gnula.mobi/tag/espanol/"))
itemlist.append(item.clone(title="Latino", action="peliculas", url="http://gnula.mobi/tag/latino/")) itemlist.append(item.clone(title="Latino", action="peliculas", url="http://gnula.mobi/tag/latino/"))
itemlist.append(item.clone(title="VOSE", action="peliculas", url="http://gnula.mobi/tag/subtitulada/")) itemlist.append(item.clone(title="VOSE", action="peliculas", url="http://gnula.mobi/tag/subtitulada/"))
@@ -53,43 +50,66 @@ def sub_search(item):
patron = '<div class="row">.*?<a href="([^"]+)" title="([^"]+)">.*?<img src="(.*?)" title' patron = '<div class="row">.*?<a href="([^"]+)" title="([^"]+)">.*?<img src="(.*?)" title'
matches = scrapertools.find_multiple_matches(data, patron) matches = scrapertools.find_multiple_matches(data, patron)
for url,name,img in matches: for url, name, img in matches:
itemlist.append(item.clone(title=name, url=url, action="findvideos", show=name, thumbnail=img)) itemlist.append(item.clone(title=name, url=url, action="findvideos", thumbnail=img))
paginacion = scrapertools.find_single_match(data, '<a href="([^"]+)" ><i class="glyphicon ' paginacion = scrapertools.find_single_match(data, '<a href="([^"]+)" ><i class="glyphicon '
'glyphicon-chevron-right" aria-hidden="true"></i>') 'glyphicon-chevron-right" aria-hidden="true"></i>')
if paginacion: if paginacion:
itemlist.append(channel=item.channel, action="sub_search", title="Next page >>" , url=paginacion) itemlist.append(Item(channel=item.channel, action="sub_search", title="Next page >>", url=paginacion))
return itemlist return itemlist
def peliculas(item): def peliculas(item):
logger.info() logger.info()
itemlist = [] itemlist = []
data = httptools.downloadpage(item.url).data data = httptools.downloadpage(item.url).data
data = re.sub(r"\n|\r|\t|&nbsp;|<br>", "", data) data = re.sub(r"\n|\r|\t|&nbsp;|<br>", "", data)
patron = '<div class="col-mt-5 postsh">.*?href="(.*?)" title="(.*?)".*?under-title">(.*?)<.*?src="(.*?)"' patron = '<div class="col-mt-5 postsh">.*?href="(.*?)" title="(.*?)".*?under-title">(.*?)<.*?src="(.*?)"'
matches = re.compile(patron,re.DOTALL).findall(data) matches = scrapertools.find_multiple_matches(data, patron)
for scrapedurl, scrapedyear, scrapedtitle, scrapedthumbnail in matches: for scrapedurl, scrapedyear, scrapedtitle, scrapedthumbnail in matches:
url = scrapedurl
title = scrapedtitle
year = scrapertools.find_single_match(scrapedyear, r'.*?\((\d{4})\)') year = scrapertools.find_single_match(scrapedyear, r'.*?\((\d{4})\)')
thumbnail = scrapedthumbnail itemlist.append(Item(channel=item.channel, action="findvideos", title=scrapedtitle, fulltitle = scrapedtitle, url=scrapedurl,
new_item =Item (channel = item.channel, action="findvideos", title=title, contentTitle=title, url=url, thumbnail=scrapedthumbnail, infoLabels={'year': year}))
thumbnail=thumbnail, infoLabels = {'year':year})
if year:
tmdb.set_infoLabels_item(new_item)
itemlist.append(new_item) tmdb.set_infoLabels(itemlist, True)
next_page_url = scrapertools.find_single_match(data, '<link rel="next" href="(.*?)"')
next_page_url = scrapertools.find_single_match(data,'<link rel="next" href="(.*?)"\/>') if next_page_url != "":
if next_page_url!="": next_page_url = item.url + next_page_url
next_page_url = urlparse.urljoin(item.url,next_page_url)
itemlist.append(item.clone(action="peliculas", title="Siguiente >>", text_color="yellow", itemlist.append(item.clone(action="peliculas", title="Siguiente >>", text_color="yellow",
url=next_page_url)) url=next_page_url))
return itemlist return itemlist
def findvideos(item):
logger.info()
itemlist = []
data = httptools.downloadpage(item.url).data
patron = 'data-src="([^"]+)".*?'
patron += 'data-toggle="tab">([^<]+)'
matches = scrapertools.find_multiple_matches(data, patron)
for url, language in matches:
url = url.replace("&amp;", "&")
response = httptools.downloadpage(url, follow_redirects=False, add_referer=True)
if response.data:
url = scrapertools.find_single_match(response.data, 'src="([^"]+)"')
else:
url = response.headers.get("location", "")
url = url.replace("&quot","")
titulo = "Ver en %s (" + language + ")"
itemlist.append(item.clone(
action = "play",
title = titulo,
url = url,
language = language))
tmdb.set_infoLabels(itemlist, True)
itemlist = servertools.get_servers_itemlist(itemlist, lambda i: i.title % i.server.capitalize())
return itemlist
def play(item):
item.thumbnail = item.contentThumbnail
return [item]