树莓派论坛

 找回密码
 立即注册

在Pi上听豆瓣电台之Python(有更新)

竹林风 发表于 2013-4-14 10:25:34 | 显示全部楼层
刚好最近正想弄这个,参考一下
allen 发表于 2013-4-14 13:38:13 | 显示全部楼层
挺有用的,看看
星火燎原 发表于 2013-4-14 23:30:23 | 显示全部楼层
正好需要这个
星火燎原 发表于 2013-4-14 23:44:18 | 显示全部楼层
如果我想实现“下一个频道、播放、下一首、喜 欢和不喜欢”这五个功能,程序应当怎么改呢?
暗夜星辰  楼主| 发表于 2013-4-15 13:28:10 | 显示全部楼层
星火燎原 发表于 2013-4-14 23:44
如果我想实现“下一个频道、播放、下一首、喜 欢和不喜欢”这五个功能,程序应当怎么改呢?

暂时 还没有  写  你可以参考网上的  豆瓣API的例子  增加报告 重新获取列表即可
以后会慢慢 补全  下一首 已经 实现了  按n键 后回车 即可  下一个频道也可以类似  更换  channel 参数实现
時光㈨①5Ⅳ 发表于 2013-4-18 15:37:20 | 显示全部楼层
这个太给力啦
mrivan168 发表于 2013-4-18 23:12:39 | 显示全部楼层
感谢楼主啊!!!!
kekeones 发表于 2013-4-19 22:51:57 | 显示全部楼层
kankan o ~~~~~~~
ahfallen 发表于 2013-4-20 01:29:44 | 显示全部楼层
非常的支持
ahfallen 发表于 2013-4-20 01:42:48 | 显示全部楼层
不妨把下mp3和下歌词的代码加上,下歌词的代码供参考:http://hi.baidu.com/butterinsect/item/985b170a18d7e4096c9048b6
python下载歌词
getlrc.py
#-*-coding:utf-8-*-
import sys, urllib, re
reload(sys)
sys.setdefaultencoding('utf-8')

class lrclib:
    def    __init__(self, music, singer=None):
        self.music = music
        self.singer = singer
        self.fp = open(music+".lrc", "w+")

   
    def    getlrc(self):
        dir = "http://mp3.sogou.com/lyric.so?query="
        music_gbk = urllib.quote(self.music.decode(sys.stdin.encoding).encode('gbk'))
        url = dir+music_gbk

        if self.singer:
            singer_gbk = urllib.quote(self.singer.decode(sys.stdin.encoding).encode('gbk'))
            url = url+"+"+singer_gbk

        try:
            conn = urllib.urlopen(url)
        except:
            print u'网络不给力, 无法连接'

        lines = conn.read()

        #records = re.findall("<li>.+LRC歌词下载</a></li>", lines)
        try:
            records = re.findall('<li>.*LRC\xb8\xe8\xb4\xca\xcf\xc2\xd4\xd8</a></li>', lines)
        except:
            print '无法找到歌词的链接地址,汗...'
        result = records[0]
        result = result.split()[1]
        left = result[result.find('"')+1:]
        left = left[:left.find(':')]   

        lrcurl = "http://mp3.sogou.com/"
        lrcurl = lrcurl+left
        try:
            lrcconn = urllib.urlopen(lrcurl)
        except:
            print '网络不给力,无法连接'
      
        print 'lrc文件正在下载中......'
        lrc = lrcconn.read()
        self.fp.write(lrc)

        conn.close()
        self.fp.close()
        print '下载完成,保存为:%s' %(music+".lrc")


if __name__ == "__main__":
    '''getlrc 歌曲名, 歌手名(可选)'''
    music = sys.argv[1]
    if len(sys.argv)>2:
        singer = sys.argv[2]
    else:
        singer = None

    r = lrclib(music, singer)
    r.getlrc()

yyt@yyt:~/workspace/pworks$ sudo python getlrc.py 素颜
lrc文件正在下载中......
下载完成,保存为:素颜.lrc
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版 | Archiver | 树莓派论坛 ( 粤ICP备15075382号-1 )