Skip to content
获取网易云音乐热评的爬虫,使用方法请看→
Python
Branch: master
Clone or download

Latest commit

Latest commit 81ecfc8 Mar 8, 2020

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
avatars
images
.gitignore
README.md
config.json
main.py
requirements.txt

README.md

Netease-Comment-Spider

一言爬虫请往这里走https://github.com/GamerNoTitle/Hitokoto-Spider

使用手册和Q&A请看这里:http://bili33.top/2020/02/17/Netease-Comment-Spider

没错又是我,我又来了。上次做完了一言的爬虫以后,我又来做网易云音乐热评的爬虫了!这次爬取的api地址是https://www.mouse123.cn/api/163/api.php,可以获取到各种参数,可获取到的参数如下表:

参数名 含义
song_id 歌曲 ID
title 歌曲名称
images 歌曲封面图片,已处理为 https 链接
author 歌曲作者
album 歌曲所属专辑
description 歌曲描述
pub_date 歌曲发行时间
comment_id 评论 ID
comment_user_id 评论所属用户 ID
comment_nickname 评论所属用户名称
comment_avatar_url 评论所属用户头像链接,已处理为 https 链接
comment_content 评论正文
comment_pub_date 评论发表日期

本次使用的还是python的requests库,使用

$ pip install requests

来进行相关依赖库的安装!

其中csv表格中固定会有comment_idcomment_usernametitleauthorcomment_content这几个参数

目前csv文件以utf8编码保存,在修复gbk编码报错之前,需要手动用gbk编码保存才可以在Excel上正常浏览!

如果打开了图片下载出现找不到文件的情况,请检查是否将avatars文件夹和images文件夹删除!!!

如果这个项目帮助了你,不妨点一个Star?

配置文件

在config.json可以调整配置,其中可选配置如下:

{
    "path": "Netease.csv",
    "times": 3,
    "delay": 0,
    "timeout": 60,
    "song_id": false,
    "images": false,
    "album": false,
    "description": false,
    "pub_date": false,
    "comment_user_id": false,
    "comment_avatar_url": false,
    "comment_pub_date": false
}

path为文件输出的路径,文件以csv格式输出,请务必带文件后缀!

times为抓取次数,支持大于0的整数,直接输入数字即可!

delay表示抓取一次得到结果以后等待的时长,为了不给api提供商造成太大的服务器负担,我强烈建议设置此项,支持任意正整数,单位是秒

timeout表示连接超时时长,支持任意正整数,单位为秒,推荐为60,否则可能未抓到结果就已经判定超时

song_id为歌曲的id,如果开启将把歌曲id写入csv文档,只支持true或false

images表示是否抓取图片,这是专辑封面,将保存到".\albums"文件夹并命名为对应的评论ID,只支持true或false

album表示歌曲来源专辑,如果开启将把专辑名写入csv文件,只支持true或false

description表示歌曲的描述,如果开启将把描述写入csv文件,只支持true或false

pub_date表示歌曲发行的时间,如果开启将把时间写入csv文档,格式为YYYY-MM-DD HH:MM:SS,只支持true或false

comment_user_id表示评论的用户的id,如果开启将把id写入csv文档,只支持true或false

comment_avatar_url表示评论用户的头像,如果开启将把头像存瑞.\avatars文件夹并命名为对应的评论ID,只支持true或false

comment_pub_date表示评论发布的时间,如果开启将把时间写入csv文档,格式为YYYY-MM-DD HH:MM:SS,只支持true或false


开发进程

  • 获取api返回的json
  • 导出为csv文件
  • 自定义输出路径
  • 自定义抓取数
  • 自定义延迟
  • 自定义超时时间
  • 自带将获取到的unicode转换为gbk
  • json文件支持
  • 专辑图片下载
  • 用户头像下载
You can’t perform that action at this time.