65.9K
CodeProject 正在变化。 阅读更多。
Home

Lyrister - 歌词抓取器

starIconstarIconstarIconstarIconstarIcon

5.00/5 (2投票s)

2014年5月18日

CPOL

2分钟阅读

viewsIcon

9203

downloadIcon

3

使用 BeautifulSoup 的 Python 歌词抓取器

引言

今天,我将分享我编写的一小段代码,用于抓取或下载您最喜欢的歌曲的歌词,并将其保存到硬盘上为 .txt 文件。

我使用 Python 2.7.4 编写此代码,并使用了 BeautifulSoup Python 包进行网络请求。

您可以在 https://github.com/PsychoCoderHC/Lyrister 获取代码。

我希望我已经处理了可能导致您问题的大部分情况。

注意

为了成功运行和执行此应用程序,您必须安装 BeautifulSoup 包,否则它将无法运行。请阅读 GitHub 仓库中的 README,了解如何安装它们。

如何使用?

在终端中,运行以下命令并按照后续说明操作

代码

python lyrister.py

您可以选择将命令行参数作为参数传递。应遵循以下格式

代码

python lyrister.py <name-of-song> <path-of-directory> <filename>

它接受三个参数。第一个参数是您想要下载歌词的歌曲名称。请注意,如果您打算在歌曲名称中使用空格,则使用双引号,并且您的目录路径必须以分隔符结尾。

示例 1

这里我们下载 Natalie Merchant 的歌曲 Carnival。由于我们没有提供带有空格的歌曲名称,因此没有问题。

代码

python lyrister.py carnival /home/psychocoder/ carnivallyric

示例 2

这里我们下载 "Poets Of Fall" 的歌曲 Carnival Of Rust。由于我们没有提供带有空格的歌曲名称,因此没有问题。

代码

python lyrister.py "carnival of rust" /home/psychocoder/ CarnivalOfRust

如果目录中存在同名的文件,则它将不允许您保存歌曲,并会要求您尝试另一个名称来下载歌词。

如果您想将文件保存到没有写入权限的目录中,则将无法保存歌词。

我已经完成了这些检查,希望您能自己理解剩下的部分。我在代码本身中为每个步骤提供了很好的描述,以及如何解决错误。希望您喜欢。

[Image: gkHR8qU.png?1]

© . All rights reserved.