rsstube/scripts/extractors/radiopublic.py

35 lines
896 B
Python

#!/usr/bin/python3
from utils import *
from download_page import download
from urllib.parse import unquote
# portable code to get filename
import os
platform = os.path.basename(__file__)
if platform.endswith(".py"):
platform = platform[:(-3)]
def extract_from_page (page, verbosity):
feed = search (page, '" alt="RSS feed"/><div>', '</div>')
if not feed is None:
return feed
feed = search (page, '<a href="https://podcasters.radiopublic.com?feedUrl=', '&amp;utm_campaign=landing-page')
if not feed is None:
return unquote(feed)
feed = search (page, '\\\"feedUrl\\\":\\\"', '\\\"')
if not feed is None:
return feed
def extract (url, page=None, network=False, verbosity=3, args={}):
# cannot get feed from URL alone
if not network:
return None
page = download (platform, url, args, verbosity)
feed = extract_from_page (page, verbosity)
if not feed is None:
return feed