def parse_day(n, xmltv, rawclist): i = n + 130 logger.info("Reading day " + str(i - 130)) epgstream = TvaStream('239.0.2.' + str(i), config['mcast_port']) epgstream.getfiles() for i in epgstream.files().keys(): logger.info("Parsing " + i) epgparser = TvaParser(epgstream.files()[i]) epgparser.parseepg(OBJ_XMLTV, rawclist) return
def parse_day(n, xmltv, rawclist): i = n + 130 logger.info("Reading day " + str(i - 130)) epgstream = TvaStream("239.0.2." + str(i), config["mcast_port"]) epgstream.getfiles() for i in epgstream.files().keys(): logger.info("Parsing " + i) epgparser = TvaParser(epgstream.files()[i]) epgparser.parseepg(OBJ_XMLTV, rawclist) return
ch = logging.StreamHandler() ch.setLevel(logging.DEBUG) formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') ch.setFormatter(formatter) fh.setFormatter(formatter) logger.addHandler(fh) logger.addHandler(ch) if len(sys.argv) == 2: IP = sys.argv[1] MCAST_PORT=3937 print "Download xml files into /tmp/: "+IP elif len(sys.argv) == 3: IP = sys.argv[1] MCAST_PORT = int(sys.argv[2]) else: print "Usage: "+ sys.argv[0]+' MULTICAST_GROUP [MULTICAST_PORT]' exit() logger.info("Getting xmls") stream = TvaStream(IP,MCAST_PORT) stream.getfiles() for i in stream.files().keys(): fM3u = open("/tmp/raw_"+IP+"_"+i+".xml", 'w+') fM3u.write(stream.files()[i]) fM3u.close exit()
logger.info("Config file can not be saved") logger.info("Init. DEM=" + str(config['demarcation']) + " TVPACKS=" + str(config['tvpackages']) + " ENTRY_MCAST=" + str(config['mcast_grp_start']) + ":" + str(config['mcast_port'])) ENCODING_EPG = 'utf-8' ENCODING_SYS = sys.getdefaultencoding() sys.setdefaultencoding(ENCODING_EPG) # Main starts demarcationstream = TvaStream(config['mcast_grp_start'], config['mcast_port']) demarcationstream.getfiles() demarcationxml = demarcationstream.files()["1_0"] logger.info("Getting channels source for DEM: " + str(config['demarcation'])) MCAST_CHANNELS = TvaParser(demarcationxml).get_mcast_demarcationip( config['demarcation']) now = datetime.datetime.utcnow() OBJ_XMLTV = ET.Element( "tv", { "date": now.strftime("%Y%m%d%H%M%S +0000"), "source_info_url": "https://go.tv.movistar.es", "source_info_name": "Grabber for internal multicast of MovistarTV", "generator_info_name": "python-xml-parser", "generator_info_url": "http://wiki.xmltv.org/index.php/XMLTVFormat"
"tv", { "date": now.strftime("%Y%m%d%H%M%S"), "source_info_url": "https://go.tv.movistar.es", "source_info_name": "Grabber for internal multicast of MovistarTV", "generator_info_name": "python-xml-parser", "generator_info_url": "http://wiki.xmltv.org/index.php/XMLTVFormat" }) #OBJ_XMLTV = ET.Element("tv" , {"date":now.strftime("%Y%m%d%H%M%S")+" +0200"}) first_day = int(sys.argv[1]) last_day = int(sys.argv[2]) logger.info("Getting channels list") channelsstream = TvaStream(MCAST_CHANNELS, MCAST_PORT) channelsstream.getfiles() xmlchannels = channelsstream.files()["2_0"] channelparser = TvaParser(xmlchannels) OBJ_XMLTV = channelparser.channels2xmltv(OBJ_XMLTV) channelsm3u = channelparser.channels2m3u() if os.path.isfile(FILE_M3U): os.remove(FILE_M3U) fM3u = open(FILE_M3U, 'w+') fM3u.write(channelsm3u) fM3u.close for day in range(first_day, last_day): i = int(day) + 130 grabbedDay = now + timedelta(days=int(day))
+ " TVPACKS=" + str(config["tvpackages"]) + " ENTRY_MCAST=" + str(config["mcast_grp_start"]) + ":" + str(config["mcast_port"]) ) ENCODING_EPG = "utf-8" ENCODING_SYS = sys.getdefaultencoding() sys.setdefaultencoding(ENCODING_EPG) # Main starts demarcationstream = TvaStream(config["mcast_grp_start"], config["mcast_port"]) demarcationstream.getfiles() demarcationxml = demarcationstream.files()["1_0"] logger.info("Getting channels source for DEM: " + str(config["demarcation"])) MCAST_CHANNELS = TvaParser(demarcationxml).get_mcast_demarcationip(config["demarcation"]) now = datetime.datetime.utcnow() OBJ_XMLTV = ET.Element( "tv", { "date": now.strftime("%Y%m%d%H%M%S +0000"), "source_info_url": "https://go.tv.movistar.es", "source_info_name": "Grabber for internal multicast of MovistarTV", "generator_info_name": "python-xml-parser", "generator_info_url": "http://wiki.xmltv.org/index.php/XMLTVFormat", },