因此,本质上,我正在制作的程序将从genius网站上获取用户选择的任何歌曲的歌词
现在我遇到的问题是,当我运行我的程序时,歌词有时会出现,有时不会出现,我会遇到属性none类型错误
现在,我已经尝试了所有我尝试使用的标题,这使得无类型错误发生得更频繁,甚至硒到webscrape,但无类型仍然发生
无论如何,由于我无法摆脱它,我考虑使用try-catch错误块,这样当非类型错误发生时,它就可以再试一次
现在,我的try-catch块遇到的问题是,当发生none-type错误时,它只会进行无限循环,直到python给出stackoverflow错误
例如,当出现none类型错误时,我把“loading…”放进去,它只是在“loading…”循环中,所以我如何修复这个错误。任何建议都会被采纳
SongURL = f"https://genius.com{picking()}{token}"
Res_1 = requests.get(SongURL)
soup = BeautifulSoup(Res_1.text, "html5lib")
while True:
try:
lyrics = soup.find("div", class_="lyrics").get_text()
print(lyrics)
break
except Exception:
print("Loading...")
continue
问题是在块的
except
部分中包含了一个continue
。 捕获异常是一种机制,用于在出现问题时告诉Python该做什么。当您告诉它在while True
内continue
时,您告诉它继续循环我将插入另一个
break
,并删除continue
。或者,最好首先重新评估是否需要while
循环。如果目标只是检索一次歌词,那么循环就不必要了相关问题 更多 >
编程相关推荐