HCN 함수 삭제(p3)
This commit is contained in:
		
							parent
							
								
									3eeca34c70
								
							
						
					
					
						commit
						f118269651
					
				| @ -122,7 +122,7 @@ https://github.com/wonipapa/epg2xml/wiki/FAQ | ||||
|   - SKB 함수 수정 | ||||
|   - SKB 함수 수정(p1) | ||||
|   - SKY 함수 수정(p2) | ||||
|   - HCN 함수 수정(p3) | ||||
|   - HCN 함수 삭제(p3) | ||||
| ### Version 1.2.4 | ||||
|   - ISCS 함수 수정 | ||||
|   - SKB 함수 수정(p1) | ||||
|  | ||||
| @ -412,8 +412,6 @@ function getEPG() { | ||||
|             GetEPGFromNaver($ChannelInfo); | ||||
|         elseif($ChannelSource == 'ISCS') : | ||||
|             GetEPGFromIscs($ChannelInfo); | ||||
|         elseif($ChannelSource == 'HCN') : | ||||
|             GetEPGFromHcn($ChannelInfo); | ||||
|         elseif($ChannelSource == 'POOQ') : | ||||
|             GetEPGFromPooq($ChannelInfo); | ||||
|         elseif($ChannelSource == 'EVERYON') : | ||||
| @ -1039,63 +1037,6 @@ function GetEPGFromIscs($ChannelInfo) { | ||||
|     if($epginfo) epgzip($epginfo); | ||||
| } | ||||
| 
 | ||||
| // Get EPG data from Hcn
 | ||||
| function GetEPGFromHcn($ChannelInfo) { | ||||
|     $ChannelId = $ChannelInfo[0]; | ||||
|     $ChannelName = $ChannelInfo[1]; | ||||
|     $ServiceId =  $ChannelInfo[3]; | ||||
|     $epginfo = array(); | ||||
|     foreach(range(1, $GLOBALS['period']) as $k) : | ||||
|         $url = "http://m.hcn.co.kr/sch_ScheduleList.action"; | ||||
|         $day = date("Y-m-d", strtotime("+".($k - 1)." days")); | ||||
|         $params = array( | ||||
|             'ch_id' => $ServiceId, | ||||
|             'onairdate' => $day, | ||||
|             '_' => _microtime() | ||||
|         ); | ||||
|         $params = http_build_query($params); | ||||
|         $method = "GET"; | ||||
|        try { | ||||
|             $response = getWeb($url, $params, $method); | ||||
|             if ($response === False && $GLOBALS['debug']) : | ||||
|                 printError($ChannelName.HTTP_ERROR); | ||||
|             else : | ||||
|                 $response = mb_convert_encoding($response, "HTML-ENTITIES", "UTF-8"); | ||||
|                 $dom = new DomDocument; | ||||
|                 libxml_use_internal_errors(True); | ||||
|                 if($dom->loadHTML($response)): | ||||
|                     $xpath = new DomXPath($dom); | ||||
|                     $query = "//li[@class!='noData']"; | ||||
|                     $rows = $xpath->query($query); | ||||
|                     foreach($rows as $row) : | ||||
|                         $startTime = $endTime = $programName = $subprogramName = $desc = $actors = $producers = $category = $episode = ""; | ||||
|                         $rebroadcast = False; | ||||
|                         $rating = 0; | ||||
|                         $startTime = trim($xpath->query("span[@class='progTime']", $row)->item(0)->nodeValue) ?: ""; | ||||
|                         $startTime = date("YmdHis", strtotime($day." ".$startTime)); | ||||
|                         $programName = trim($xpath->query("span[@class='progTitle']", $row)->item(0)->nodeValue) ?: ""; | ||||
|                         $images = $row->getElementsByTagName('img'); | ||||
|                         foreach($images as $image): | ||||
|                             preg_match('/re\.png/', $image->getAttribute('src'), $rebroad); | ||||
|                             if($rebroad != NULL) $rebroadcast = True; | ||||
|                             preg_match('/.*plus([\d,]+)\.png/', $image->getAttribute('src'), $grade); | ||||
|                             if($grade != NULL) $rating = $grade[1]; | ||||
|                         endforeach; | ||||
|                         //ChannelId, startTime, programName, subprogramName, desc, actors, producers, category, episode, rebroadcast, rating
 | ||||
|                         $epginfo[] = array($ChannelId, $startTime, $programName, $subprogramName, $desc, $actors, $producers, $category, $episode, $rebroadcast, $rating); | ||||
|                         usleep(1000); | ||||
|                     endforeach; | ||||
|                 else : | ||||
|                     if($GLOBALS['debug']) printError($ChannelName.CONTENT_ERROR); | ||||
|                 endif; | ||||
|             endif; | ||||
|         } catch (Exception $e) { | ||||
|             if($GLOBALS['debug']) printError($e->getMessage()); | ||||
|         } | ||||
|     endforeach; | ||||
|     if($epginfo) epgzip($epginfo); | ||||
| } | ||||
| 
 | ||||
| // Get EPG data from POOQ
 | ||||
| function GetEPGFromPooq($ChannelInfo) { | ||||
|     $ChannelId = $ChannelInfo[0]; | ||||
|  | ||||
							
								
								
									
										48
									
								
								epg2xml.py
									
									
									
									
									
								
							
							
						
						
									
										48
									
								
								epg2xml.py
									
									
									
									
									
								
							| @ -132,8 +132,6 @@ def getEpg(): | ||||
|             GetEPGFromNaver(ChannelInfo) | ||||
|         elif ChannelSource == 'ISCS': | ||||
|             GetEPGFromIscs(ChannelInfo) | ||||
|         elif ChannelSource == 'HCN': | ||||
|             GetEPGFromHcn(ChannelInfo) | ||||
|         elif ChannelSource == 'POOQ': | ||||
|             GetEPGFromPooq(ChannelInfo) | ||||
|         elif ChannelSource == 'EVERYON': | ||||
| @ -579,52 +577,6 @@ def GetEPGFromIscs(ChannelInfo): | ||||
|         epginfo = epginfo2 | ||||
|         epgzip(epginfo) | ||||
| 
 | ||||
| # Get EPG data from HCN | ||||
| def GetEPGFromHcn(ChannelInfo): | ||||
|     ChannelId = ChannelInfo[0] | ||||
|     ChannelName = ChannelInfo[1] | ||||
|     ServiceId =  ChannelInfo[3] | ||||
|     epginfo = [] | ||||
|     url = 'http://m.hcn.co.kr/sch_ScheduleList.action' | ||||
|     for k in range(period): | ||||
|         day = today + datetime.timedelta(days=k) | ||||
|         params = {'ch_id': ServiceId, 'onairdate': day, '_':  int(time.time()*1000)} | ||||
|         try: | ||||
|             response = requests.get(url, params=params, headers=ua, timeout=timeout) | ||||
|             response.raise_for_status() | ||||
|             html_data = response.content | ||||
|             data = html_data | ||||
|             strainer = SoupStrainer('li') | ||||
|             soup = BeautifulSoup(data, htmlparser, parse_only=strainer, from_encoding='utf-8') | ||||
|             html =  soup.find_all('li') if soup.find_all('li') else '' | ||||
|             if(html) : | ||||
|                 for row in html: | ||||
|                     startTime = endTime = programName = subprogramName = desc = actors = producers = category = episode = '' | ||||
|                     rebroadcast = False | ||||
|                     rating = 0 | ||||
|                     if 'noData' in row['class']: | ||||
|                         continue | ||||
|                     startTime = str(day) + ' ' + row.find('span', {'class':'progTime'}).text.strip() | ||||
|                     startTime = datetime.datetime.strptime(startTime, '%Y-%m-%d %H:%M') | ||||
|                     startTime = startTime.strftime('%Y%m%d%H%M%S') | ||||
|                     programName = row.find('span', {'class':'progTitle'}).text.decode('string_escape').strip() | ||||
|                     for image in row.find_all('img', {'class':'vM'}, alt=True): | ||||
|                         rebroad = re.match('(재방송)',image['alt'].decode('string_escape').strip()) | ||||
|                         if not (rebroad is None): rebroadcast = True | ||||
|                         grade = re.match('([\d,]+)',image['alt']) | ||||
|                         if not (grade is None): rating = int(grade.group(1)) | ||||
|                     #ChannelId, startTime, programName, subprogramName, desc, actors, producers, category, episode, rebroadcast, rating | ||||
|                     epginfo.append([ChannelId, startTime, programName, subprogramName, desc, actors, producers, category, episode, rebroadcast, rating]) | ||||
|                     time.sleep(0.001) | ||||
|         except ValueError: | ||||
|             if(debug): printError(ChannelName + CONTENT_ERROR) | ||||
|             else: pass | ||||
|         except (requests.exceptions.RequestException) as e: | ||||
|             if(debug): printError(ChannelName + str(e)) | ||||
|             else: pass | ||||
|     if(epginfo) : | ||||
|         epgzip(epginfo) | ||||
| 
 | ||||
| # Get EPG data from POOQ | ||||
| def GetEPGFromPooq(ChannelInfo): | ||||
|     ChannelId = ChannelInfo[0] | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user