用selenium爬取网易云音乐歌单并且保存为csv文件
时间: 2024-05-11 10:15:24 浏览: 94
首先,你需要安装 Selenium 库,并且需要一个可以运行的浏览器驱动。下面是一个示例代码,它会爬取网易云音乐歌单的歌曲名称和歌手名称,并将这些信息保存到 CSV 文件中:
```python
# 导入必要的库
from selenium import webdriver
from selenium.webdriver.common.by import By
import csv
# 定义保存到 CSV 文件中的信息的列表
songs = []
# 使用 webdriver 启动浏览器
driver = webdriver.Firefox()
# 使用浏览器访问网易云音乐歌单的 URL
driver.get("https://music.163.com/#/playlist?id=你的歌单 ID")
# 等待页面加载完成
driver.implicitly_wait(10)
# 获取歌曲列表的 div 元素
song_list_div = driver.find_element(By.ID, "song-list-pre-cache")
# 获取所有的 li 元素
li_elements = song_list_div.find_elements(By.TAG_NAME, "li")
# 遍历所有的 li 元素
for li in li_elements:
# 获取歌曲名称和歌手名称
song_name = li.find_element(By.CLASS_NAME, "f-thide").text
artist_name = li.find_element(By.CLASS_NAME, "s-fc3").text
# 将歌曲信息添加到列表中
songs.append((song_name, artist_name))
# 关闭浏览器
driver.close()
# 将歌曲信息写入 CSV 文件中
with open("songs.csv", "w", newline="") as csvfile:
writer = csv.writer(csvfile)
writer.writerows(songs)
```
在这段代码中,我们使用了 Selenium 的 webdriver 模块启动了 Firefox 浏
阅读全文