使用 urllib2,我尝试从 HTML 文件中保存歌词。嗯..这是代码:
generate_url = 'http://azlyrics.com/lyrics/' + artist_split + '/' + title_split + '.html'
try:
response = urllib2.urlopen(generate_url)
except urllib2.HTTPError:
print "Lyrics doesn't exist. Please try again."
time.sleep(0.75)
UMM.lyrics_from_track()
read_lyrics = response.read()
#Parsing HTML file containing lyrics
parser = etree.HTMLParser()
tree = etree.parse(StringIO.StringIO(read_lyrics), parser)
lyrics = tree.xpath("//div[@style='margin-left:10px;margin-right:10px;']/text()")
print ''
print '\033[32m-----------------------------------------\033[0m'
for words in lyrics:
print str(words).strip()
print '\033[32m-----------------------------------------\033[0m'
print ''
save = raw_input("Do you want to save this lyrics in a txt file in current working directory? [Y/N] ")
if save == 'y' or save == 'Y':
f = open(artist + '_' + title + '.txt', 'w')
f.write(str(lyrics).strip())
f.close()
print 'Return to main menu.'
time.sleep(0.75)
UMM.read_information()
elif save == 'n' or save == 'N':
print 'Return to main menu.'
time.sleep(0.75)
os.system('clear')
UMM.read_information()
else:
print 'Incorrect choice.'
time.sleep(0.75)
UMM.lyrics_from_track()
如果要将歌词保存在 txt 文件中,输出是这样的:
['\r\n', '\r\n无论多远都如此接近', "\n不能再发自内心", '\n永远相信我们是谁', '\n其他都不重要', '\n', '\n从来没有这样打开过自己', '\n生活是我们的,我们按照自己的方式生活', "\n所有这些话我不只是说出来", '\n其他都不重要', '\ n', '\n相信我在你身上寻找和发现', '\n每一天对我们来说都是新事物', '\n为不同的观点敞开心扉', '\n其他都不重要', '\n', '\ n从不关心他们的所作所为', '\n从不关心他们所知道的', '\n但我知道', '\n', '\n无论多远都如此接近', "\n离心”, '\n永远相信我们是谁', '\n其他都不重要', '\n', '\n从不关心他们的所作所为', '\n从不关心他们所知道的', '\n但我知道', '\ n', '\n从来没有这样打开过自己', '\n生活是我们的,我们按照自己的方式生活', "\n所有这些话我不只是说出来", '\n其他都不重要', '\n' , '\n相信我在你身上寻找和发现', '\n每一天对我们来说都是新事物', '\n敞开心扉换个角度看', '\n其他都不重要', '\n', '\n从不关心', '\n从不关心他们玩的游戏', '\n从不关心他们所做的', '\n从不关心他们知道的', '\n我知道', '\n', '\ n无论多远都如此接近',"\n不能再发自内心了", '\n永远相信我们是谁', '\n其他都不重要\r\n', '\r\n']
我如何将经文放在列中?