【问题标题】:Extract ID3 tags of a MP3 URL using python使用python提取MP3 URL的ID3标签
【发布时间】:2011-09-02 08:01:05
【问题描述】:

我正在开发一个可以提取 mp3 文件的 ID3 标签的 python 程序。我正在使用 urllib2 检查 URL 的 MIME 类型(如果是音频/mpeg),之后我需要查找有关此 MP3 文件的信息。

问题是,我不想在我的电脑中完全加载那个 Mp3 文件,我只想提取 ID3 标签?那么是否可以在不完全下载 MP3 文件的情况下提取它们,因为下载会减慢我的进程?

请提出建议。

谢谢,

【问题讨论】:

  • 仅供参考,只做 ID3v2 标签会容易得多,因为它们是一个标题......只需下载足够的数据以获得标签长度,下载这些字节,然后关闭连接. ID3v1 标签是文件末尾的页脚,所以如果你也需要这些标签,它会更复杂。 ID3v2 是可变长度的(最大 256 M),规范在这里:id3.org
  • 你成功地完成了你一直在寻找的东西吗?你能读取 ID3 标签吗?如果你能分享一个sn-p,那就太好了。谢谢。

标签: python url mime-types urllib2 id3


【解决方案1】:

您可以进行部分下载:Download file using partial download (HTTP)(如果服务器支持的话)

重读并看到 joelhardi 的评论,这更容易:

jcomeau@intrepid:/tmp$ python
Python 2.6.6 (r266:84292, Apr 20 2011, 11:58:30) 
[GCC 4.5.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import urllib
>>> urllib.urlopen('http://latest/temp.csv')
<addinfourl at 160617676 whose fp = <socket._fileobject object at 0x9872aec>>
>>> input=_
>>> input.read(128)
'gene,species,C_frame,start_exon1,end_exon1,start_exon2,end_exon2,start_exon3,end_exon3,start_exon4,end_exon4,intron1,intron2,int'
>>> input.close()
>>>

【讨论】:

    猜你喜欢
    • 2015-01-09
    • 2011-09-14
    • 1970-01-01
    • 2012-10-22
    • 2010-10-18
    • 1970-01-01
    • 2011-09-12
    • 1970-01-01
    • 2011-07-02
    相关资源
    最近更新 更多