Új hozzászólás Aktív témák

  • Hege1234

    addikt

    import requests
    from bs4 import BeautifulSoup

    def parse_src(text_response, src=''):
    try:
    soup = BeautifulSoup(text_response, 'html.parser')
    for vid in soup.find_all('source'):
    src = vid['src']
    except:
    pass
    return src

    def parse_text(text_response, line, src=''):
    try:
    return text_response.split("\n")[line]
    except:
    return src

    def parse_xspf(src=''):
    try:
    soup = BeautifulSoup(html_response.text, 'html.parser')
    src = soup.find('location').text
    except:
    pass
    return src

    m3_data = [
    {
    'name': 'Film Now',
    'url': 'https://onlinestream.live/play.xspf?id=7061&ch=1&ext=.xspf',
    'logo': '"https://musor.tv/images/filmnow.png"',
    'channel-num': '"4"',
    'group': '"Filmek"',
    'parser': parse_xspf,
    'parser_args': {},
    },
    {
    'name': 'The Heartland Network',
    'url': 'http://streamstat.net/videoplayer.cgi?sid=71076387&ext=.m3u8',
    'logo': '"https://upload.wikimedia.org/wikipedia/en/b/ba/Heartland_TV_logo.png"',
    'channel-num':'"38"',
    'group':'"Angol;Zene"',
    'parser': parse_src,
    'parser_args': {},
    },
    {
    'name': 'CBS Reality',
    'url': 'https://raw.githubusercontent.com/Special2020/Iptv-hu.m3u/master/Uj%20T%20A.m3u',
    'logo': '"https://static.wikia.nocookie.net/logopedia/images/c/ce/CBS_Reality_%28Stacked%29.svg/revision/latest/scale-to-width-down/185?cb=20191203154407"',
    'channel-num': '"79"',
    'group': '""',
    'parser': parse_text,
    'parser_args': {'line': 310},
    },
    ]

    exif_info = '#EXTM3U\n'
    for channel in m3_data:
    html_response = requests.get(channel['url'])
    parser = channel['parser']
    extra = channel['parser_args']
    src = parser(html_response.text, **extra)
    if src:
    channel['src'] = src
    exif_info += f'#EXTINF:0, tvg-chno={channel["channel-num"]}, group-title={channel["group"]}, tvg-logo={channel["logo"]}, {channel["name"]}\n{src}\n'

    print(exif_info, file=open("test.m3u8", "w"))
    print(exif_info)

    a kapott linkekből van pár elég fura link
    http://193.33.39.106:8790/ (Film Now) nem működik VLC alól
    de nem errort dob hanem csak próbálná elindítani a végtelenségig
    Kodi meg kb lefagy tőle..

    valamelyik link addig printelne amíg nincs leállítva ezért tettem be egy exit() -et
    pl. az ilyen linkek miatt
    http://193.33.39.108:7000/play/a006

    urllib3.disable_warnings() ez pedig a https linkek miatt kellett

    import requests
    import urllib3
    urllib3.disable_warnings()

    def check_stream_link(url):
    try:
    s = requests.Session()
    with s.get(url, stream=True, verify=False, timeout=1) as resp:
    for line in resp.iter_lines():
    if line:
    print(line)
    exit()
    except:
    pass

    url = 'http://193.33.39.106:8790/'
    check_stream_link(url)

    teszteltem mind a 82 linket csak akkor printelt üresen, ha ez a végtelen próbálkozás történik (kb 4 ilyen link volt)
    hozzá lehetne esetleg valahogy tenni ezt úgy, hogy csak azokat adja hozzá az exif_info-hoz ha a print nem üres?

Új hozzászólás Aktív témák