【问题标题】:Python - Parse Liquidsoap metadataPython - 解析 Liquidsoap 元数据
【发布时间】:2018-08-25 11:26:27
【问题描述】:

我使用了出色的 Liquidsoap 流引擎,但在解析来自 telnet 服务器的 alsa.metadata 命令的结果时遇到了一些麻烦。

这是他的输出示例:

--- 10 ---
source_url="http://liquidsoap.local:8020/radio"
title="anastacia - lumere lumera"
--- 9 ---
source_url="http://liquidsoap.local:8020/radio"
title="bob tostes - strangers in the night"
--- 8 ---
source_url="http://liquidsoap.local:8020/radio"
title="lucio battisti - amarsi un po"
--- 7 ---
source_url="http://liquidsoap.local:8020/radio"
title="george white group - nothing compares to you"
--- 6 ---
source_url="http://liquidsoap.local:8020/radio"
title="olivia - true colors"
--- 5 ---
source_url="http://liquidsoap.local:8020/radio"
title="ritmo del mundo - what s love got to do with it"
--- 4 ---
source_url="http://liquidsoap.local:8020/radio"
title="tania maria - come with me"
--- 3 ---
source_url="http://liquidsoap.local:8020/radio"
title="antonio carlos jobim a sting - how insentive"
--- 2 ---
source_url="http://liquidsoap.local:8020/radio"
title="dht - driver s seat"
--- 1 ---
source_url="http://liquidsoap.local:8020/radio"
title="marg nelson - lady marmelade"

它看起来不像任何已知格式.. csv、json、xml ... 你能告诉我如何制作一个 Python 数组吗?

例如:

[10] => [source_url] => "http://liquidsoap.local:8020/radio", [title] => "anastacia - lumere lumera",
[9] => [source_url] => "http://liquidsoap.local:8020/radio", [title] => "bob tostes - strangers in the night"

谢谢,

【问题讨论】:

    标签: python parsing telnet liquidsoap


    【解决方案1】:

    我使用该脚本来解析元数据:

    url = 'http://localhost:8000/radio'
    request = urllib2.Request(url, headers={'Icy-MetaData': 1})  # request metadata
    response = urllib2.urlopen(request)
    #print(response.headers, file=sys.stderr)
    metaint = int(response.headers['icy-metaint'])
    # title may be empty initially, try several times
    response.read(metaint)  # skip to metadata
    metadata_length = struct.unpack('B', response.read(1))[0] * 16  # length byte
    metadata = response.read(metadata_length).rstrip(b'\0')
    

    【讨论】:

      猜你喜欢
      • 2019-07-31
      • 1970-01-01
      • 2019-04-09
      • 2023-01-03
      • 1970-01-01
      • 2012-03-25
      • 2014-03-18
      • 2013-05-16
      • 1970-01-01
      相关资源
      最近更新 更多