mirror of https://gitlab.com/bashrc2/epicyon
				
				
				
			Podcasts may not have people list
							parent
							
								
									8686a29ac1
								
							
						
					
					
						commit
						d5553fe8a0
					
				|  | @ -14071,6 +14071,7 @@ class PubServer(BaseHTTPRequestHandler): | |||
|                 nickname = nickname.split('/')[0] | ||||
|             episode_timestamp = self.path.split('?podepisode=')[1].strip() | ||||
|             episode_timestamp = episode_timestamp.replace('__', ' ') | ||||
|             episode_timestamp = episode_timestamp.replace('aa', ':') | ||||
|             if self.server.newswire.get(episode_timestamp): | ||||
|                 pod_episode = self.server.newswire[episode_timestamp] | ||||
|                 html_str = \ | ||||
|  |  | |||
							
								
								
									
										24
									
								
								newswire.py
								
								
								
								
							
							
						
						
									
										24
									
								
								newswire.py
								
								
								
								
							|  | @ -384,10 +384,9 @@ def xml_podcast_to_dict(xml_str: str) -> {}: | |||
|     See https://github.com/Podcastindex-org/podcast-namespace/ | ||||
|     blob/main/docs/1.0.md | ||||
|     """ | ||||
|     if 'podcastindex.org/namespace/1.0' not in xml_str: | ||||
|         return {} | ||||
|     if '<podcast:' not in xml_str: | ||||
|         return {} | ||||
|         if '<itunes:' not in xml_str: | ||||
|             return {} | ||||
| 
 | ||||
|     podcast_properties = { | ||||
|         "locations": [], | ||||
|  | @ -446,6 +445,7 @@ def xml_podcast_to_dict(xml_str: str) -> {}: | |||
|         ctr += 1 | ||||
| 
 | ||||
|     # get the image for the podcast, if it exists | ||||
|     podcast_episode_image = None | ||||
|     episode_image_tags = ['<itunes:image'] | ||||
|     for image_tag in episode_image_tags: | ||||
|         if image_tag not in xml_str: | ||||
|  | @ -455,7 +455,7 @@ def xml_podcast_to_dict(xml_str: str) -> {}: | |||
|             episode_image = episode_image.split('href="')[1] | ||||
|             if '"' in episode_image: | ||||
|                 episode_image = episode_image.split('"')[0] | ||||
|                 podcast_properties['image'] = episode_image | ||||
|                 podcast_episode_image = episode_image | ||||
|                 break | ||||
|         else: | ||||
|             if '>' in episode_image: | ||||
|  | @ -463,8 +463,22 @@ def xml_podcast_to_dict(xml_str: str) -> {}: | |||
|                 if '<' in episode_image: | ||||
|                     episode_image = episode_image.split('<')[0] | ||||
|                     if '://' in episode_image and '.' in episode_image: | ||||
|                         podcast_properties['image'] = episode_image | ||||
|                         podcast_episode_image = episode_image | ||||
|                         break | ||||
| 
 | ||||
|     if podcast_episode_image: | ||||
|         podcast_properties['image'] = podcast_episode_image | ||||
| 
 | ||||
|         if '<itunes:explicit>Y' in xml_str or \ | ||||
|            '<itunes:explicit>T' in xml_str or \ | ||||
|            '<itunes:explicit>1' in xml_str: | ||||
|             podcast_properties['explicit'] = True | ||||
|         else: | ||||
|             podcast_properties['explicit'] = False | ||||
|     else: | ||||
|         if '<podcast:' not in xml_str: | ||||
|             return {} | ||||
| 
 | ||||
|     return podcast_properties | ||||
| 
 | ||||
| 
 | ||||
|  |  | |||
|  | @ -270,9 +270,10 @@ def _html_newswire(base_dir: str, newswire: {}, nickname: str, moderator: bool, | |||
|             # change the link url to a podcast episode screen | ||||
|             podcast_properties = item[8] | ||||
|             if podcast_properties: | ||||
|                 if podcast_properties.get('persons') and \ | ||||
|                    podcast_properties.get('image'): | ||||
|                 if podcast_properties.get('image') and \ | ||||
|                    'explicit' in podcast_properties: | ||||
|                     episode_id = date_str.replace(' ', '__') | ||||
|                     episode_id = episode_id.replace(':', 'aa') | ||||
|                     link_url = \ | ||||
|                         '/users/' + nickname + '/?podepisode=' + episode_id | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue