EPG XMLTV
Hola,
He creado un script en python que genera la EPG en formato XMLTV para 7 días (configurable). Es muy rápido, tarda 2 minutos, nada que ver con el WebGrab+Plus. Lo ejecuto en mi NAS synology con el task scheduler y por NFS mi Week lo coge. No sé si se puede colgar el script, pero si estáis interesados, os lo puedo pasar. Un saludo!! |
A mi me interesa y mucho ya que me hice un sh para que me bajase un xmltv de una web pero sólo aparecen 2 días. Mi email es [email]calvaroc@gmail.com[/email]
Muchas gracias |
Ya te lo he enviado.
Un saludo. |
Muchas gracias crack!!!
|
[QUOTE=baudilio1977;4723505]Hola,
He creado un script en python que genera la EPG en formato XMLTV para 7 días (configurable). Es muy rápido, tarda 2 minutos, nada que ver con el WebGrab+Plus. Lo ejecuto en mi NAS synology con el task scheduler y por NFS mi Week lo coge. No sé si se puede colgar el script, pero si estáis interesados, os lo puedo pasar. Un saludo!![/QUOTE] Me interesa bastante, si puedes enviamelo a tobisammet@gmail gracias! |
Cita:
|
Hola buenas me lo puedes pasar, voy loco por algo asi. Gracias. Pirriboy@gmail
|
Ya te lo he enviado.
|
Cita:
Me interesa a mi también, un saludo! |
Hola,
Si me pasas tu correo, te lo envío. Un saludo. |
Hola me podrias pasar el scrip, Gracias iGhoostsocial@gmail.com
|
estaría bien probarlo, me lo podrías pasar? Gracias
|
Hola me lo podrias pasar para echarle un vistazo?
PD. mandamelo por MP |
[QUOTE=gmpdelfin;4727680]estaría bien probarlo, me lo podrías pasar? Gracias[/QUOTE]
Enviado |
Cita:
|
Buenas,
He utilizado el script y me genera sin problemas el XML, pero ahora no se que hacer con él. No sabría como indicarle al TVHeadend que coja la información desde éste fichero. ¿Alguno podría indicarme un poco más acerca del proceso? Muchas gracias a todos, un saludo!! |
Hola,
Tienes que modificar el fichero /storage/.kodi/addons/service.multimedia.tvheadend/bin/tv_grab_file Tienes que sustituir: if [ "$XMLTV_TYPE" = "FILE" ]; then cat "$XMLTV_LOCATION_FILE" exit 0 elif [ "$XMLTV_TYPE" = "SCRIPT" ]; then if [ -e "$XMLTV_LOCATION_SCRIPT" ] ; then exec "$XMLTV_LOCATION_SCRIPT" fi elif [ "$XMLTV_TYPE" = "WEB" ]; then wget -qO - "$XMLTV_LOCATION_WEB" exit 0 fi por: cat "/ruta/fichero.xml" exit 0 Después en tvheadend tienes que seleccionar el xml y mapear uno a uno los canales del xml con los canales que aparecen en la lista. Un saludo y gracias. |
Magnífico,
Muchas gracias, ya lo tengo funcionando!! Un saludo |
Me interesaria probarlo, porque con openeelc no soiy capaz de tener epg de mas de dos sesiones. Mi correo es alucard24@gmail.com
Gracias, y si hicierais un minituto de como ejecutar el script en windows 7 seria perfecto |
Hola,
Pensaba que no se podía, por ese motivo no lo he colgado. Alucard24, ya te lo he enviado. Un saludo. |
no pasa nada porque lo cuelques, porque no es nada que sea de pirateria.
|
Hola,
estoy tratando de configurar el webgrabplus, y me resulta algo complejo, pls puedes pasarme tu script para echarle un vistazo? thks |
Alguien que lo tenga si me lo puede mandar....javituco@hotmail.com. Gracias!
|
Me gustaria si eres tan amable, que me lo mandases para probar y disfrutarlo en la E2.
ferjimi@gmail.com Gracias de antemano y enhorabuena por el trabajo. |
baudilio1977 o alguno que lo tenga y sea tan amable de mandarlo a ferjimi@gmail.com por favor. Muchas gracias
|
Hola,alguien podria enviarme el script y poder disfrutar de el.
taoluichi@hotmail.com Muchas gracias por adelantado. Un saludo a todos. |
cuelgo el script: (espero que al autor no le moleste)
import httplib import xml.etree.ElementTree as ET import datetime import shutil date1 = datetime.date.today() date2 = date1 + datetime.timedelta(days=5) sdate1 = date1.strftime("%Y-%m-%d") sdate2 = date2.strftime("%Y-%m-%d") print "establecemos las fechas" print sdate1, sdate2 def patch_http_response_read(func): def inner(*args): try: return func(*args) except httplib.IncompleteRead, e: return e.partial return inner httplib.HTTPResponse.read = patch_http_response_read(httplib.HTTPResponse.read) params = "fechaInicio="+ sdate1 +"&fechaFin="+ sdate2 +"&genero=0&formato=xml&selPredefinicion=0&cadena%5B%5D=C4&cadena%5B%5D=LA2&cadena%5B%5D=T5&cadena%5B%5D=TVE&cadena%5B%5D=MV3&cadena%5B%5D=A3&cadena%5B%5D=SEXTA&cadena%5B%5D=NONSTP&cadena%5B%5D=FOXGE&cadena%5B%5D=NEOX&cadena%5B%5D=SCI-FI&cadena%5B%5D=FOXCR&cadena%5B%5D=PCM&cadena%5B%5D=FDFIC&cadena%5B%5D=SET&cadena%5B%5D=CPSER&cadena%5B%5D=COSMO&cadena%5B%5D=AXN&cadena%5B%5D=MV2&cadena%5B%5D=AMC&cadena%5B%5D=TNT&cadena%5B%5D=MTV&cadena%5B%5D=CL13&cadena%5B%5D=DCESP&cadena%5B%5D=SUNDAN&cadena%5B%5D=CPCOME&cadena%5B%5D=CPCOLE&cadena%5B%5D=CPXTRA&cadena%5B%5D=MV1&cadena%5B%5D=TCM&cadena%5B%5D=CPACCI&cadena%5B%5D=PARCH&cadena%5B%5D=HOLLYW&cadena%5B%5D=CPPART&cadena%5B%5D=CPLI2&cadena%5B%5D=CPLIG2&cadena%5B%5D=CPFUT&cadena%5B%5D=CPLIGA&cadena%5B%5D=IBERAL&cadena%5B%5D=CFERIA&cadena%5B%5D=CAZPES&cadena%5B%5D=TDEP&cadena%5B%5D=MVMTGP&cadena%5B%5D=BARNA&cadena%5B%5D=MVF1&cadena%5B%5D=GOLF%2B&cadena%5B%5D=CPDEP&cadena%5B%5D=CPD2&cadena%5B%5D=GARAGE&cadena%5B%5D=REALM&cadena%5B%5D=VJR&cadena%5B%5D=ODISEA&cadena%5B%5D=NATGW&cadena%5B%5D=NATGEO&cadena%5B%5D=HIST&cadena%5B%5D=BIOGRA&cadena%5B%5D=DCRMAX&cadena%5B%5D=CACOC&cadena%5B%5D=ENERGY&cadena%5B%5D=NOVA&cadena%5B%5D=DIVINI&cadena%5B%5D=DECASA&cadena%5B%5D=DCH&cadena%5B%5D=PANDA&cadena%5B%5D=PLAYDC&cadena%5B%5D=CLANTV&cadena%5B%5D=BOING&cadena%5B%5D=NICKJR&cadena%5B%5D=NICK&cadena%5B%5D=DCHXD&cadena%5B%5D=MEZZO&cadena%5B%5D=SOLMUS&cadena%5B%5D=VH1&cadena%5B%5D=40TV&cadena%5B%5D=BL&cadena%5B%5D=CNN&cadena%5B%5D=RTESP&cadena%5B%5D=NBC&cadena%5B%5D=FOXNWS&cadena%5B%5D=ENW&cadena%5B%5D=RUSSIA&cadena%5B%5D=GALAV&cadena%5B%5D=ORBE21&cadena%5B%5D=ANTV&cadena%5B%5D=PBOY&cadena%5B%5D=HDTQ10&cadena%5B%5D=HDTQ2&cadena%5B%5D=TQ6&cadena%5B%5D=TQ1&cadena%5B%5D=TQ2&cadena%5B%5D=TQ3&cadena%5B%5D=TQ4&cadena%5B%5D=TQ5" headers = {"Content-type": "application/x-www-form-urlencoded","Accept": "application/xml"} conn = httplib.HTTPConnection("comunicacion.canalplus.es") conn.request("POST", "/guiaProgramacion/exportar", params, headers) response = conn.getresponse() print "comenzamos a leer el fichero" myxml = response.read() print "finalizamos de leer el fichero" root = ET.fromstring(myxml) pases = root.findall(".//pase") canales = [] print "comenzamos a crear el xml" tv = ET.Element("tv") for ps in pases: cadena = ps.attrib["cadena"] if canales.count(cadena) == 0: canales.append(cadena) channel = ET.SubElement(tv, "channel", id=cadena) ET.SubElement(channel, "display", lang="es").text = cadena ET.SubElement(channel, "url").text = "http://www.plus.es" for index,ps2 in enumerate(pases): fecha = ps2.attrib["fecha"].replace("-","") start = fecha + ps2.find('hora').text.replace(":","") + " +0200" stop = start; channel = ps2.attrib["cadena"] titulo = ps2.find('titulo').text descripcion_corta = ps2.find('descripcion_corta').text if titulo == descripcion_corta: title = descripcion_corta else: title = descripcion_corta + " - " + titulo desc = ps2.find('sinopsis_larga').text category = ps2.find('tipo_ficha').text if index+1 < len(pases): nextchannel = pases[index+1].attrib["cadena"] if channel == nextchannel: fechafinal = pases[index+1].attrib["fecha"].replace("-","") stop = fechafinal + pases[index+1].find('hora').text.replace(":","") + " +0200" programme = ET.SubElement(tv, "programme", start=start, stop=stop, channel=channel) ET.SubElement(programme, "title", lang="es").text = title ET.SubElement(programme, "desc", lang="es").text = desc ET.SubElement(programme, "category", lang="es").text = category print "finalizamos de crear el xml" tree = ET.ElementTree(tv) tree.write("C:/EPG/guide.xml") print "salvado a disco el xml" |
Sin problema :)
|
con el cambio de horario, el epg sale mal, no se si el autor lo puede corregir, o decir como se hace.
|
Cita:
Prueba a cambiar esta línea stop = fechafinal + pases[index+1].find('hora').text.replace(":","") + " +0200" por stop = fechafinal + pases[index+1].find('hora').text.replace(":","") + " +0100" Un saludo. |
xxxxxxxxxx
|
[QUOTE=baudilio1977;4723505]Hola,
He creado un script en python que genera la EPG en formato XMLTV para 7 días (configurable). Es muy rápido, tarda 2 minutos, nada que ver con el WebGrab+Plus. Lo ejecuto en mi NAS synology con el task scheduler y por NFS mi Week lo coge. No sé si se puede colgar el script, pero si estáis interesados, os lo puedo pasar. Un saludo!![/QUOTE] Hola, se que es un poco tarde, pero buscando por google he dado con tu post hoy... estoy muy interesado. Si tú o cualquiera de los que se lo envió me lo puede pasar, quedaría muy agradecido. [email]dariomo@gmail.com[/email]. Saludos y gracias. |
La franja horaria es GMT +2. Ahora son las 08:28. |
Powered por vBulletin™ Version 3.8.10
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.
Traducido por vBsoporte - vBulletin en español
ZackYFileS - Foros de Debate