300行代码的下载mp3程序,希望给你带来方便

由本社区发起的开源项目
头像
huangdc
帖子: 94
注册时间: 2006-10-07 14:31

300行代码的下载mp3程序,希望给你带来方便

#1

帖子 huangdc » 2008-06-06 16:34

解决了不能缩放问题,一直搞到了下半底夜。下载链接改了:viewtopic.php?p=785407#785407
改了下,可以浏览目录下的mp3文件,点击刷新即可浏览目录下的mp3文件,由于要读入标签信息,有点慢,可以在这里编辑标签。下载的文件也会列入文件浏览列表,文件列表里的文件可以从磁盘删除也可以从列表里清除。
如果要修改默认目录,在mainwindow.py文件中的第18行

代码: 全选

self.downdir = user.home
改成

代码: 全选

self.downdir = "/home/xxx/my/music/path"
即可。
没有用axel是因为axel遇到有中文的url不能自动编码url。
如果列出目录文件太慢可以把提取tag信息部分去掉在mainwindow.py的258行:

代码: 全选

                    #"""
                    tagcmd = 'mid3v2 -l "'+path+'"'
                    out = os.popen(tagcmd)                    
                    for line in out.readlines():
                        if line.startswith('TALB='):
                            album = line.split('=')[1]
                            album = album[0: len(album)-1]
                        elif line.startswith('TPE1'):
                            artist = line.split('=')[1]
                            artist = artist[0: len(artist)-1]
                        elif line.startswith('TIT2'):
                            title = line.split('=')[1]
                            title = title[0: len(title)-1]
                    out.close()
                    #"""
把第一行和最后一行的那两个'#'去掉即可把那些代码注释掉。
图片先行:
图片
图片
用到的工具:wget, mplayer, mid3v2
运行方法:python mainwindow.py
附件
右键菜单下载,试听,删除。wget下载,mplayer试听,mid3v2编辑tag
右键菜单下载,试听,删除。wget下载,mplayer试听,mid3v2编辑tag
下载前可手动下更改tag,可翻页
下载前可手动下更改tag,可翻页
上次由 huangdc 在 2008-06-09 0:13,总共编辑 12 次。
netstone
帖子: 60
注册时间: 2007-06-13 11:25

#2

帖子 netstone » 2008-06-06 16:36

支持原创.............................................. :D
头像
solcomo
帖子: 2838
注册时间: 2007-04-25 13:12

#3

帖子 solcomo » 2008-06-06 16:37

支持
:D
♜♞♝♛♚♝♞♜
♟♟♟♟♟♟♟♟
♙♙♙♙♙♙♙♙
♖♘♗♕♔♗♘♖

☠☯⚔⚓☣☦☃☕
☹☻☪☭☬⚖⚛⚜
ℜℳℬ™ ℋℯℓ℘ ℳℭ
sƂɐʍ рǀɹoʍ əɥʇ oS
头像
来年鱼
帖子: 30
注册时间: 2007-08-07 9:47
来自: 广东茂名

#4

帖子 来年鱼 » 2008-06-06 16:41

支持
下来看看
a new world,a new start……
头像
huangdc
帖子: 94
注册时间: 2006-10-07 14:31

#5

帖子 huangdc » 2008-06-06 16:42

一些r提示(其实我知道的也不多)下面的终端可以使用ctr+c终止下载,试听时,mplayer的快捷键都用得上,q退出,左箭头后退,右箭头前进,想再听一次,向上箭头可以翻出上一条命令,再听一次。
头像
laowu2141
帖子: 530
注册时间: 2007-06-19 11:25
系统: kubuntu 13.04
来自: 北京
联系:

#6

帖子 laowu2141 » 2008-06-06 16:47

东西不错,不过怎么搜英文歌就没有了呢?
netstone
帖子: 60
注册时间: 2007-06-13 11:25

#7

帖子 netstone » 2008-06-06 16:53

试用了下,觉得很实用,尤其是底下有个控制台的设计很不错的。。。
就是觉得如果能在搜出的结果中右键中加入地址链接就好了,这样直接在底下控制台用自己的下载命令来下了,wget有点慢

谢谢楼主分享。
头像
xiooli
帖子: 6956
注册时间: 2007-11-19 21:51
来自: 成都
联系:

#8

帖子 xiooli » 2008-06-06 16:54

哇噢,支持哦,希望继续更新,弄成音乐盒的样子最好啊。
头像
solcomo
帖子: 2838
注册时间: 2007-04-25 13:12

#9

帖子 solcomo » 2008-06-06 16:54

下完还把标签弄好了 :em17
就是wget慢了点
最好可以检测axel,有的话就调用
♜♞♝♛♚♝♞♜
♟♟♟♟♟♟♟♟
♙♙♙♙♙♙♙♙
♖♘♗♕♔♗♘♖

☠☯⚔⚓☣☦☃☕
☹☻☪☭☬⚖⚛⚜
ℜℳℬ™ ℋℯℓ℘ ℳℭ
sƂɐʍ рǀɹoʍ əɥʇ oS
头像
xiooli
帖子: 6956
注册时间: 2007-11-19 21:51
来自: 成都
联系:

#10

帖子 xiooli » 2008-06-06 16:59

建议,把#!/usr/bin/env python放第一行,我这出现

代码: 全选

xiooli@XIOOLI:~/桌面/downmp3$ ./mainwindow.py 
./mainwindow.py: line 3: import:找不到命令
./mainwindow.py: line 4: import:找不到命令
./mainwindow.py: line 5: import:找不到命令
./mainwindow.py: line 6: import:找不到命令
./mainwindow.py: line 7: import:找不到命令
./mainwindow.py: line 11: 在未预料的“=”附近出现语法错误
./mainwindow.py: line 11: ` COL_SIZE, COL_URL) = range(6)'
,改后就好了。

++
头像
haria1988
帖子: 689
注册时间: 2008-04-17 17:53
来自: 江苏.无锡
联系:

#11

帖子 haria1988 » 2008-06-06 17:23

顶!喜欢!
头像
davidlone
帖子: 626
注册时间: 2007-03-06 18:14
来自: 常德--重庆

#12

帖子 davidlone » 2008-06-06 17:54

GOOD
ABIT Rocket AV8 ,AMD3500,创见DDR433 1GB,希捷IDE250GB,MSI6200a,7130电视卡,Archlinux
李丑男
帖子: 320
注册时间: 2007-08-29 22:44

#13

帖子 李丑男 » 2008-06-06 18:19

xiooli 写了:建议,把#!/usr/bin/env python放第一行,我这出现

代码: 全选

xiooli@XIOOLI:~/桌面/downmp3$ ./mainwindow.py 
./mainwindow.py: line 3: import:找不到命令
./mainwindow.py: line 4: import:找不到命令
./mainwindow.py: line 5: import:找不到命令
./mainwindow.py: line 6: import:找不到命令
./mainwindow.py: line 7: import:找不到命令
./mainwindow.py: line 11: 在未预料的“=”附近出现语法错误
./mainwindow.py: line 11: ` COL_SIZE, COL_URL) = range(6)'
,改后就好了。

++
不错,确实是
头像
huangdc
帖子: 94
注册时间: 2006-10-07 14:31

#14

帖子 huangdc » 2008-06-06 18:39

netstone 写了:试用了下,觉得很实用,尤其是底下有个控制台的设计很不错的。。。
就是觉得如果能在搜出的结果中右键中加入地址链接就好了,这样直接在底下控制台用自己的下载命令来下了,wget有点慢

谢谢楼主分享。
在下面的控制台里按Crt+C,找到输出的命令中的链接地址,手动用自己的工具下载。
头像
huangdc
帖子: 94
注册时间: 2006-10-07 14:31

#15

帖子 huangdc » 2008-06-06 18:41

xiooli 写了:建议,把#!/usr/bin/env python放第一行,我这出现

代码: 全选

xiooli@XIOOLI:~/桌面/downmp3$ ./mainwindow.py 
./mainwindow.py: line 3: import:找不到命令
./mainwindow.py: line 4: import:找不到命令
./mainwindow.py: line 5: import:找不到命令
./mainwindow.py: line 6: import:找不到命令
./mainwindow.py: line 7: import:找不到命令
./mainwindow.py: line 11: 在未预料的“=”附近出现语法错误
./mainwindow.py: line 11: ` COL_SIZE, COL_URL) = range(6)'
,改后就好了。

++
已经改了。
回复