使用lyricsgenius包收集歌词的Python Twitter Bot

2024-06-17 18:38:19 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用lyricsgenius python包(https://pypi.org/project/lyricsgenius/)根据本教程制作一个Twitter歌词机器人-https://medium.com/@mahibhosain98/creating-a-lyrics-bot-on-twitter-with-python3-and-aws-lambda-1e22743dc3b7

到目前为止,我的应用程序使用以下代码成功返回指定艺术家随机选择的歌曲的歌词:

all_songs = ["array_of_song_titles"]

def get_raw_lyrics():
    genius_client_access_token = "my_access_token"
    genius = lyricsgenius.Genius(genius_client_access_token)
    random_song_title = random.choice(all_songs)
    lyrics = genius.search_song(random_song_title, "Artist Name").lyrics
    song = random_song_title.upper()
    return lyrics, song

lyrics, song = get_raw_lyrics()

print(lyrics)

然而,当我打印歌词时,我可以看到,在最后一首歌词之后,它还从genius.com获取了“EmbedShare URLCopyEmbedCopy”

例如,最后一行看起来像

'Dancing to electro-pop like a robot from 1984
Said, from 1984EmbedShare URLCopyEmbedCopy'

如何防止EmbedShare URLCopyEmbedCopy出现在最终歌词字符串中


Tags: httpscomtokengetaccesssongtitle歌词
2条回答

一个简单的修复方法是不使用字符串索引打印它们

print(lyrics[:-27])

因为字符串的长度是27,所以我们不需要最后27个字符

print(lyrics.replace("EmbedShare URLCopyEmbedCopy", ""))是否适用于您的用例

相关问题 更多 >