酷Linux 专栏: Linux 和音乐潮流-1
题外话: 作为一个坚定的*nix系统使用者,我常常向我周围的人推荐使用L
好吧,先说我抓音乐的小例子。我来到美国之后
wget some_url
就可以把一个网页或者资源下载到自己机器上。
好,我们先试验这个命令:
wget http://www.google.com/trends/music -O music.list
-O 表示另存为后面的文件,简单吧。
然后,我们再学一个命令叫cat. cat 不是小猫,是把文件的内容输出到屏幕. cat 后面可以接多个文件,具体可以用 cat –help 看帮助。这个地方,我们用 cat filename 输出文件。
cat music.list
怎么样,cat 输出了一个HTML的文件吧。这个HTML文件就是你的浏览器看到的. 然后你要说了,我怎么把这个html文件变成一个格式整齐的列表呢。不着急,下回我告诉你,这次先打一段天书一样的代码(这是一整行内容,注意第一行结束后有一个空格):
cat music.list |tr "\n" " "|egrep -o "song\">[^<]*” |tr “>” “\t”|cut -f 2|sort|uniq >mylist.new
好了,你就发现mylist.new 中全是格式正确的歌曲名了。这段天书怎么理解您无须担心,你可以发现原来在windows下需要copy 20次得到的文本文件一行命令就得到了。那么,学这段天书要多久呢?只要你常来看我的专栏,看三次,每次十分钟,肯定能理解。如果一生做一次,从头学这个天书效率当然不如手工,不过要是天天赶潮流,您就需要考虑用这个命令了。
好了,最后贴出一个喜欢听王小峰推荐歌曲的人要用的一个下载脚本,每次三表同学新歌上线,你轻轻一敲回车,歌曲全到你硬盘,多让人羡慕啊(当然,这个别太传,本来就是偷偷通过他的xml 发现歌曲链接的,传过了三表要发火了)。这个脚本是python 写的,但是因为windows下没有wget, 所以是Linux 专用的 :) 快用这个让美女/闺蜜/帅哥羡慕你吧
#!/usr/bin/python
# Download all the music recommended by wangxiaofeng.net
# Author: Eric You XU
# GPLv2
import os
import commands
os.popen("wget www.wangxiaofeng.net/mp3player.xml -O mp3player.xml")
str="""cat mp3player.xml|egrep -o path=[^3]+mp3|tr “\\”" “\\n”|grep http >wangxiaofeng.list”"”
print str
os.popen(str)
f=open(”wangxiaofeng.list”)
for g in f.read().split(’\n’):
print g
a="wget \""+g+"\""
os.popen(a)
注意: 最后三行是有缩进的。可以把这个存成 a.py, 然后 chmod +x a.py. 然后执行 ./a.py 具体的原理我下次讲。如果有问题,请留言。预祝你抓取所有王小峰歌曲成功。
课后作业:
1. 练习用wget 抓一下 baidu 的500个金曲, 链接是: http://list.mp3.baidu.com/topso/mp3topsong.html
2. 通过cat 命令研究一下baidu 的 html 和 Google 的 html. 看看哪家的让你觉得舒服. 下节课我们继续讲怎么处理这两个HTML.
下节课预告:1. 那段天书的原理是什么 2. 我怎么抓baidu 的流行榜单
过几天等有时间我还会给大家介绍优盘上的Linux, 光盘上的Linux 和最酷的Linux XGL桌面 还有给基督徒用的Linux 和给学前儿童用的Linux. 其实Linux远比一般人想像的简单而且酷。
本专栏欢迎投稿,暂无稿费。

Angke said,
April 10, 2007 @ 6:58 pm
不错,这样下去会有更多的人使用Linux的。
我觉得还是先不要拉到细节里去的好,好多人连windows的命令行都没有用过,提到Linux命令行真的就头大了。
另外,个人意见是Mac OS X已经把最酷眩桌面的称号让给了装了XGL的Linux了 :)
Solrex said,
April 10, 2007 @ 8:15 pm
同意楼上最后一句话
不过我只在排版公司看过 Mac OS X
没用过
Angke said,
April 10, 2007 @ 8:29 pm
“他们总认为Linux难用”
岂止Linux被误认为难用,有好几个人都这样说Mac OS X。通常他们这样说之后就会被我的出离愤怒所震慑,继而掩饰说自己需要的软件在Mac上不能运行。然而绝大多数人又会立刻开始抓耳挠腮,因为我一定要他们讲出一个不能在Mac上找到替代品的软件。
所以很多人的观点完全是偏见。但是很奇怪的是,这个偏见是怎么产生和散发出去的。
Eric said,
April 10, 2007 @ 8:34 pm
是啊,人们的偏见不知道从什么地方来的,而且一来,就挡不住,你无论怎么纠正,他们就和忠实信徒一样,坚持观点不动摇。
iverson said,
April 10, 2007 @ 9:04 pm
very useful and wonderful!
virushuo said,
April 11, 2007 @ 12:13 pm
不错,但是太细节了会不会让很多人晕倒呢?
Ur friend said,
April 11, 2007 @ 12:38 pm
一眼看出virushuo是个牛人
gondi said,
April 11, 2007 @ 11:15 pm
看到这样的文章很喜欢,有一个问题想请教,搜了好久都找不到方法(ubuntu新新手)
请问ubuntu下怎么调亮度和对比度?由于我的显示器质量问题,必须通过调显卡才能设置满意的颜色,但ubuntu下的显卡面板只能调整三原色,不能调对比度和亮度,特请教大家(ATI 9550),谢谢
kliz said,
April 11, 2007 @ 11:57 pm
我一直都是复制粘贴到tmp.lst里面
然后awk -F\” ‘{print $2}’ tmp.lst >mp3.lst
有点笨啊
恩我不懂python
如果让我改改的话
这段代码
f=open(”wangxiaofeng.list”)
for g in f.read().split(’\n’):
print g
a=”wget \”"+g+”\”"
os.popen(a)
可以把wget改成proz哦
或者直接wget -i wangxiaofeng.list
Eric said,
April 12, 2007 @ 10:20 pm
ProZilla 不是每个机器上都有,比较而言wget 比较通用
那个 wget -i 受教了 感谢提醒。
Romeo Chen said,
April 21, 2007 @ 9:54 pm
什么时候有那段天书原理的解释呢
huaihuaixiaoshao said,
April 21, 2007 @ 11:36 pm
windows下也有wget的
3 day bahamas cruise said,
May 30, 2007 @ 5:47 pm
3 day bahamas cruise…
» 酷Linux 專欄: Linux 和音樂潮流-1 | 4G Spaces and Web 2.3…
无限 said,
October 28, 2008 @ 2:47 am
回3楼: 中国有句话 叫做 “己所不欲,勿施于人” 同样可以引申出 “己之所欲,勿强于人”,各人的审美观不同 自然会有不一样的看法,认为别人是偏见的 应该首先要检视自己是否也是偏见.
回楼主: 我觉得linux在中国的普及倒不是盗版和游戏,而是qq和网速
说qq是因为qq的一整套东西确实已经占据了网民的大量应用时间,诚然有不少人在网吧里玩游戏 但还有更多的人在办公室 在家里玩qq游戏大厅,另外qq的视频和音频功能很对中国网民的口味 当然不一定包括在座这些geeker型(我也在内)的.
而网速则是另外一回事,如果网速能维持到10MB/s 的话,注意是大B,linux反而比windows更具有可用性 因为那一套包管理制度 和 软件库比windows下的手工安装更易用 更干净,然而目前由于网速的问题 一些发行版 如ubuntu 默认安装后的软件源在中国访问是奇慢无比,只有自己配置以后换个软件源才会好些 但这个换软件源这一步就阻挡了很多用户 比如我父母这类的