爬取网易云音乐热评

332hh 2018-04-22 原文

爬取网易云音乐热评

首先打开网易云音乐,打开你想爬取的评论的页面,然后f12,发现是能找到评论的 

,然后我们打开网页源代码,搜索评论,发现源代码中并没有评论的相关信息,这表明评论信息是js代码,是加密了的动态页面,一般我们爬取的是静态的,即源代码当中能直接找到的我们能看见的数据,这时候用正则表达式匹配则可以爬取成功,而动态页面,我们得在XHR里捕获它的请求信息

这里抓包有个小技巧,即比对它的id,这样子就不用每个都去看一下是不是我们要的包

 

 可以看到这是一个post请求,而Resquest URL则是我们要的数据的地址,点开preview,可以发现我们要的数据就在hotComments里面

 

 怎么爬呢,既然是个post请求,我们可以用模拟浏览器向服务器发送请求的方法,来解析页面,这样做就可以直接用它加密即表单里的数据,而不是先去解密再解析页面,如图

然后利用json来获取我们想要的键值对关系的评论数据就可以了。

下面是我的源代码:

 

#encoding:utf8
import requests
import re
import json
url = “https://music.163.com/weapi/v1/resource/comments/R_SO_4_545922868?csrf_token=”
headers = {
‘Host’:”music.163.com”,
‘Origin’:’https://music.163.com’,
‘Referer’:’https://music.163.com/song?id=545922868′,
‘User-Agent’:’Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36′,
}
data = {
‘params’:”+C7GdwabX3V3pnW5pJGQWQcfOByDUKz5qrT24HkmK7EKYuDq4gNyM4S3UvKx7+s68ANR7n7yAU0MNsZWVwNOKljmd3HABOHiyiFEEXslfOqv4c5p49h8XnH/fnFF+dBIqLsJQjjWhvrfXx66bIWOBB1J+I9SH0Y+ixRt/fIT6LegMOGfytqGk83BTouH3N9O”,
‘encSecKey’:”c4a66b9b1d8c7accc431eb3c85e502acc0a4a7c3e7fe01c9018f2a3b3f0c98fa91fbf2764ca7b00a3d386fa6457bf621f4f0e63930805d12c7d5a9bff9176ad2c2f580256ec043e3a307c35105ba91a0d60a4abec672758ab45f14044af122b457298b37e7530280a51f7905e82eb0bff9fa7397c76e839080401f28903565be”,
}
html = requests.post(url,headers=headers,data=data).text

comments = json.loads(html)
comments = comments[‘hotComments’]
for i in comments:
print(i[‘commentId’],i[‘content’])

这是我爬取的结果:

 

posted on 2018-04-22 15:49 332hh 阅读() 评论() 编辑 收藏

 

 
版权声明:本文为332hh原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/332hh/p/8907633.html

爬取网易云音乐热评的更多相关文章

随机推荐

  1. 计算机网络基础 — Linux 虚拟路由器

    计算机网络基础 — Linux 虚拟路由器 2020-02-29 21:02  JmilkFan_范桂飓  阅 […]...

  2. 决策树之属性数据处理

       在生成决策树的过程中,如果是离散属性,而且每个样例属性值都存在,那么我们很容易进行划分,但是在现实生活中 […]...

  3. JQuery

    JQuery说明 jQuery 是 JavaScript 的一个类库,类似 python 中的模块。 jQue […]...

  4. UITableView快速入门 – Say_ALin

    UITableView快速入门 2015-06-25 00:40  Say_ALin  阅读(236)  评论 […]...

  5. Windows Server之DFS系统详解 – 南山放牧

    Windows Server之DFS系统详解 https://wenku.baidu.com/view/6a2 […]...

  6. 安装setuptools和pip

    准备工作:已安装python并配置好环境变量,可参考 http://blog.csdn.net/donggeg […]...

  7. java集合之HashMap源码解读

    源自:jdk1.8.0_121HashMap继承自AbstractMap,实现了Map、Cloneable、S […]...

  8. 阿里云服务器ecs配置之安装jdk(转)

    一、安装环境 操作系统:Centos 7.4 JDK版本:1.8 工具:Xshell5、Xftp5 二、安装步 […]...

展开目录

目录导航