Найти - Пользователи
Полная версия: Помогите составить парсер названий треков с радио стримов, универсальным сделать.
Начало » Data Mining » Помогите составить парсер названий треков с радио стримов, универсальным сделать.
1
werner1643
  # -*- coding: utf8 -*-
#!/usr/bin/env python
import urllib.request
stream_url = 'http://pub1.di.fm/di_classictrance'
request = urllib.request.Request(stream_url)
try:
    request.add_header('Icy-MetaData', 1)
    response = urllib.request.urlopen(request)
    icy_metaint_header = response.headers.get('icy-metaint')
    if icy_metaint_header is not None:
        metaint = int(icy_metaint_header)
        read_buffer = metaint+255
        content = response.read(read_buffer)
        title = content[metaint:].split("'")[1]
    print (title)
except:
print ('Error')

в сети нашел простой пример.
вопрос в том как решить проблему с его работой при больших нагрузках
использовать асинхронные фреймворки, построенные на asyncio и aiohttp ?
может у кого есть рабочие варианты?
ZerG
У вас название топика не сочетается с кодом и вашими комментариями!
Вернее все три пункта вобще не пересекаются.
Как-то сведите все к однуму что бы можно было понять что же вам все таки нужно!
werner1643
Согласен.
тут скрипт поправил - https://github.com/werner1643/mywork/blob/master/stream.py
выводит название трека.

вопрос - как этот скрипт будет работать при больших нагрузках, если будут сотни пользователей к нему обращаться и как снизить на него нагрузку в будущем.
второй вопрос - как выцепить продолжительность играющего трека. в хеадере не нашел параметров подобных, но должна быть такая информация там.

icy-name
icy-genre
icy-pub
icy-br
icy-url
icy-metaint - в хеадере пока что такие параметры вижу
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB