Python爬虫 爬取歌曲的评论并写入txt

本文介绍了一种使用selenium库和谷歌浏览器驱动爬取网易云音乐周杰伦歌曲评论的方法,并将评论按歌名保存为txt文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


一、实验任务

进入网易云音乐周杰伦主页面爬取对应歌曲的评论,以歌名保存为txt文件
在这里插入图片描述

二、所需库函数

本实验需要使用selenium库与谷歌浏览器驱动
安装selenium:

pip install selenium

下载对应版本谷歌浏览器驱动后填入下方代码需要处

https://registry.npmmirror.com/binary.html?path=chrome-for-testing/

三、参考代码

代码如下:

from selenium import  webdriver
import  time
import csv
songlinks=[]
def get_link():
    #填入自己电脑上的浏览器驱动位置,注意使用双斜杠
    wd=webdriver.Chrome("C:\\Program Files\\Google\\chrome driver\\chromedriver.exe") 
    #打开网易歌曲页面
    wd.get("https://music.163.com/#/artist?id=6452") 
    time.sleep(4)
    #切换到歌曲窗口
    wd.switch_to.frame("g_iframe")
    #单曲链接获取
    links=wd.find_elements_by_css_selector(".m-table.m-table-1.m-table-4 .txt a")
    for link in links:
        href=link.get_attribute('href')
        songlinks.append(href)
    wd.close()
    
def get_comments(urls):
	#填入自己的浏览器驱动位置,注意使用双斜杠
    wd=webdriver.Chrome("C:\\Program Files\\Google\\chrome driver\\chromedriver.exe")
    for url in urls:
        wd.get(url)
        time.sleep(3)
        #切换到歌曲窗口
        wd.switch_to.frame("g_iframe")
        #歌名获取
        songName=wd.find_element_by_css_selector(".tit em").text
        #评论获取
        songComment=wd.find_elements_by_xpath('//div[@class = "cmmts j-flag"]//div[2]/div[1]/div')
        with open("E:\\python文件\\songcomments\\"+songName+'.txt','a+',encoding='utf-8-sig') as f:
                                    #songcomments为文件夹
            for comment in songComment:
                f.writelines(comment.text +'\n')
    wd.close()
                    
if __name__=="__main__":
    get_link()
    get_comments(songlinks)

四、实验结果

ShiYu
在这里插入图片描述

五、遇到的问题

爬取数据的页面与显示页面不在同一页面,注意切换

wd.switch_to.frame("g_iframe")

六、写在最后

博主仅为python初学者,本篇文章仅供交流学习,如有不足之处欢迎各位大佬指点!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值