酷Linux 专栏: Linux 和音乐潮流-1
题外话: 作为一个坚定的*nix系统使用者,我常常向我周围的人推荐使用L
好吧,先说我抓音乐的小例子。我来到美国之后
wget some_url
就可以把一个网页或者资源下载到自己机器上。
好,我们先试验这个命令:
wget http://www.google.com/trends/music -O music.list<br />
-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 专用的 :) 快用这个让美女/闺蜜/帅哥羡慕你吧
print g
a="wget \""+g+"\""
os.popen(a)
注意: 最后三行是有缩进的。可以把这个存成 a.py, 然后 chmod +x a.py. 然后执行 ./a.py 具体的原理我下次讲。如果有问题,请留言。预祝你抓取所有王小峰歌曲成功。
课后作业:
-
练习用wget 抓一下 baidu 的500个金曲, 链接是: http://list.mp3.baidu.com/topso/mp3topsong.html
-
通过cat 命令研究一下baidu 的 html 和 Google 的 html. 看看哪家的让你觉得舒服. 下节课我们继续讲怎么处理这两个HTML.
下节课预告:1. 那段天书的原理是什么 2. 我怎么抓baidu 的流行榜单
过几天等有时间我还会给大家介绍优盘上的Linux, 光盘上的Linux 和最酷的Linux XGL桌面 还有给基督徒用的Linux 和给学前儿童用的Linux. 其实Linux远比一般人想像的简单而且酷。
本专栏欢迎投稿,暂无稿费。