网易评论觉得腻?爬取心动歌曲来解腻

(一)前言

1.觉得腻?

听说你们觉得爬取评论已经腻歪了,今天鹏二就带你们一起爬取你的那个(他,她)或者欧巴的心动歌曲,话不多说,我们正题开始!

2.来解腻

今天我们就用各种方法进行爬取尝试,带大家一步步爬取到心动音乐

(二)准备工作

所用技术

2.1 requests+Beautifulsoup

requests获取网页内容
Beautifulsoup对获取内容进行解析,拿到相应数据

2.2 selenium

通过selenium自动化直接加载相应网页进行定位元素和内容获取

2.3 requests+Beautifulsoup+cookie

(三)网页分析

3.1网址说明和页面分析

本次爬取页面为羽肿喜欢的音乐
由于网页版只加载喜欢音乐前20个,因此我们只爬前20个
网址:https://music.163.com/#/playlist?id=408260494
在这里插入图片描述

3.2元素定位

在这里插入图片描述
红框部分即为音乐名所在处,这个找起来很麻烦,不过掌握规律后还是很快的

下面我们分析这个请求

请求视图
在这里插入图片描述

在这里插入图片描述
请求相应
在这里插入图片描述

(四)开始爬取

4.1 requests+Beautifulsoup

import requests
from bs4 import BeautifulSoup

headers={
    "user-agent":"chrome/10"
}
r=requests.get("https://music.163.com/playlist?id=2092096875",headers=headers,timeout=300)
print(r.status_code)#打印响应码
demo=r.text
f=open("羽肿.html","w",newline="",encoding="utf-8")
#将网页源代码写进文件
f.write(demo)
soup=BeautifulSoup(demo,"html.parser")#解析内容
ul=soup.find("ul","f-hide")
for item in ul.find_all("a"):
    print(item.text)

在这里插入图片描述

不知道为什么?那我们看看获取到的文件渲染到浏览器是什么样子:

在这里插入图片描述

为啥404?

很简单,没登录;那你们要说简单了,用selenium呗,好,下面我们试试selenium进行网易登录

4.2 selenium

再次分析登录情况

在这里插入图片描述
哎,我们只用过selenium进行输入登录,这是啥?这是啥?真头大;

看来我们只能另外想别的办法,看最后一个方法吧

4.3requests+Beautifulsoup+cookie

cookie

Cookie 并不是它的原意“甜饼”的意思, 而是一个保存在客户机中的简单的文本文件, 这个文件与特定的 Web 文档关联在一起, 保存了该客户机访问这个Web 文档时的信息, 当客户机再次访问这个 Web 文档时这些信息可供该文档使用。由于“Cookie”具有可以保存在客户机上的神奇特性, 因此它可以帮助我们实现记录用户个人信息的功能, 而这一切都不必使用复杂的CGI等程序 [2] 。
举例来说, 一个 Web 站点可能会为每一个访问者产生一个唯一的ID, 然后以 Cookie 文件的形式保存在每个用户的机器上。如果使用浏览器访问 Web, 会看到所有保存在硬盘上的 Cookie。在这个文件夹里每一个文件都是一个由“名/值”对组成的文本文件,另外还有一个文件保存有所有对应的 Web 站点的信息。在这里的每个 Cookie 文件都是一个简单而又普通的文本文件。透过文件名, 就可以看到是哪个 Web 站点在机器上放置了Cookie(当然站点信息在文件里也有保存) [2] 。

获取cookie

1.我们先进行手动扫码登录
2.利用f12开发者工具进行network分析,找到相应网址,进行获取cookie
在这里插入图片描述

代码及最终成果
import requests
from bs4 import BeautifulSoup

headers={
    "user-agent":"chrome/10",
    "cookie":"_iuqxldmzr_=32; _ntes_nnid=bf3adaf31b24a95bffaf0eff23cbd392,1622199417424; _ntes_nuid=bf3adaf31b24a95bffaf0eff23cbd392; NMTID=00OdtxhAEx6bf4clU7-rB7gxE-YqjIAAAF5sp69Kg; WEVNSM=1.0.0; WM_TID=yvPp1FB8p6lBUEBABAZqws8dh73kEliG; hb_MA-891C-BF35BECB05C1_source=www.baidu.com; P_INFO=qpsbyqq@163.com|1623933631|0|mail163|00&99|not_found&1623933627&mail_client#shd&370100#10#0#0|&0|mailmaster_android|qpsbyqq@163.com; WNMCID=zlnbli.1623933639197.01.0; hb_MA-9F44-2FC2BD04228F_source=netease.im; WM_NI=COkNUF0afxwkZCGOuBOdMFEiw2j0b1wQyrpFjej6BAbpdB91DWCaik%2B4riQA9TjbZea7n65nvW7%2BMYPQDRoqpjh7xHvEGXy3Cf2KQYABo62OH%2BhM2I6skaogDs06N5gfS3g%3D; WM_NIKE=9ca17ae2e6ffcda170e2e6eeaab2738696e5b4db4392e78fb2c45b939b9ebbb67288bdfad2cc3aadeaabb2eb2af0fea7c3b92a8191a5afd84ef4bfaa99f6619a9d89b0f84a8dbc83a7c863b5eea6d1e13bb58fb793f34eaabba6d7c14ba2b0aca3bc3b88898d82ec61e9ecbe8ad44bfb8ca683d96fa3e9a2d7b866b689f9ccd053948f8cb3ee7bb4b6a8d8fb44b69b89b9fc3981bafeacd453839ea1d7b1458cf5a8aeb143f6ada582ee6d88ad00d7cd3fa5ba9dd4e637e2a3; ntes_kaola_ad=1; playerid=51924929; MUSIC_U=10877c15d1ef03604b524c43deae62623271b233789184dc6e7a9cb0bce4afda33a649814e309366; __csrf=4f06cbba2e503a935047e428675c4fc5; JSESSIONID-WYYY=visoF3%2BwIOG8JsXgXEoSfVIz%2Boa%2FBW3OFSeJrXYY4cvm31P%2Fpahd1%5CcmsRFxVGjy%2FzhSkWKw8quzPjj8IkYiCW31M2u69xTyXAJ2mV9w3cD1MmiY0%2FB3yICbR%2B%5Cwiqvt2XcXlkGYkB6RuCZ%5CPf1ECb2AQpoSKa%2BzeE6vpq31JTY2lSwB%3A1624969901111referer: https://music.163.com/"

}
r=requests.get("https://music.163.com/playlist?id=2092096875",headers=headers,timeout=300)
print(r.status_code)
demo=r.text
soup=BeautifulSoup(demo,"html.parser")
ul=soup.find("ul","f-hide")
for item in ul.find_all("a"):
    print(item.text)

在这里插入图片描述

(五)结语

关于学爬虫,更多考察你的分析能力,多敲代码,加油塑造自己!!



好了,就到这里了,有疑惑的小伙伴可以在评论区留言,还想爬取什么?大胆说出来吧,博主在法律允许范围内量力而为!!!

在这里插入图片描述

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

拉不拉斯

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值