tkinter懒人音乐下载器
时间: 2023-09-28 15:13:28 浏览: 48
以下是一个简单的Tkinter懒人音乐下载器的示例代码,它使用Python的requests库和BeautifulSoup库来从网上搜索和下载音乐。请注意,这只是一个示例,可能不适用于所有网站和音乐类型。
```python
import requests
from bs4 import BeautifulSoup
import tkinter as tk
from tkinter import messagebox, filedialog
def search_music():
query = entry.get()
if not query:
messagebox.showerror("Error", "Please enter a search query.")
return
url = "https://www.youtube.com/results?search_query=" + query
response = requests.get(url)
soup = BeautifulSoup(response.text, "html.parser")
videos = soup.select(".yt-uix-tile-link")
if not videos:
messagebox.showerror("Error", "No videos found.")
return
video = videos[0]
video_url = "https://www.youtube.com" + video["href"]
response = requests.get(video_url)
soup = BeautifulSoup(response.text, "html.parser")
audio = soup.select(".audio-thumb")
if not audio:
messagebox.showerror("Error", "No audio found.")
return
audio_url = audio[0]["href"]
download_music(audio_url)
def download_music(url):
filepath = filedialog.asksaveasfilename(defaultextension=".mp3")
if not filepath:
return
response = requests.get(url)
with open(filepath, "wb") as f:
f.write(response.content)
root = tk.Tk()
root.title("Lazy Music Downloader")
label = tk.Label(root, text="Enter a search query:")
label.pack()
entry = tk.Entry(root, width=50)
entry.pack()
button = tk.Button(root, text="Search", command=search_music)
button.pack()
root.mainloop()
```
在这个示例中,我们首先使用requests库从YouTube搜索音乐,然后使用BeautifulSoup库从搜索结果中提取视频和音频的URL。最后,我们使用filedialog库提供的对话框来选择文件路径并下载音乐。