【发布时间】:2021-09-02 17:26:57
【问题描述】:
使用 Genius API,我获得了歌词页面的歌曲网址。我现在想使用beautifulsoup4 进行网络爬网;但是,我遇到了一个错误。代码如下:
from bs4 import BeautifulSoup
import requests
def scrap_song_url(url):
page = requests.get(url)
html = BeautifulSoup(page.text, 'html.parser')
lyrics = html.find('div', class_='lyrics').get_text()
return lyrics
在这里,我正在查看歌词页面的 html。举个例子,看看这个特定的 url:https://genius.com/Acceptance-permanent-lyrics。通过 html 查找,歌词似乎包含在 div 下,类为 'lyrics' 。
但是,尝试使用 html.find 查找此对象会返回 NoneType 对象,因此 .get_text() 会引发错误。我认为这意味着,由于某种原因,没有找到 html 标记(或任何你称之为的,我真的不知道 html)。如何从给定的歌词 url 中获取 div 类 'lyrics' 的歌词?
【问题讨论】:
标签: python html beautifulsoup