qq音乐排行榜数据爬取
废话不多说,直接上教程
qq音乐排行榜链接:
https://u.y.qq.com/cgi-bin/musicu.fcg?format=json&inCharset=utf8&outCharset=utf-8platform=yqq.json&needNewCode=0&data={“detail”:{“module”:“musicToplist.ToplistInfoServer”,“method”:“GetDetail”,“param”:{“topId”:26,”offset”:0,“num”:20,“period”:“2019-12-20”}}}
其中topId为榜单id,period为日期,num为获取榜单歌曲数,基于这些信息,我们通过修改这三个参数就可以很轻易地获取其他榜单的任意日期的数据,获取之后通过json解析工具即可获取榜单中的歌曲信息,下面以qq流行指数榜为例,上源码。
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;public class HttpUtil {/*** http get服务** @param httpUrl url* @return 响应结果*/public static String doGet(String httpUrl) {HttpURLConnection connection = null;InputStream is = null;BufferedReader br = null;// 返回结果字符串String result = null;try {// 创建远程url连接对象URL url = new URL(httpUrl);// 通过远程url连接对象打开一个连接,强转成httpURLConnection类connection = (HttpURLConnection)url.openConnection();// 设置连接方式:getconnection.setRequestMethod("GET");// 设置连接主机服务器的超时时间:15000毫秒connection.setConnectTimeout(15000);// 设置读取远程返回的数据时间:60000毫秒connection.setReadTimeout(60000);// 发送请求connection.connect();// 通过connection连接,获取输入流if (connection.getResponseCode() == 200) {is = connection.getInputStream();// 封装输入流is,并指定字符集br = new BufferedReader(new InputStreamReader(is, "UTF-8"));// 存放数据StringBuffer sbf = new StringBuffer();String temp = null;while ((temp = br.readLine()) != null) {sbf.append(temp);sbf.append("\r\n");}result = sbf.toString();}} catch (MalformedURLException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} finally {// 关闭资源if (null != br) {try {br.close();} catch (IOException e) {e.printStackTrace();}}if (null != is) {try {is.close();} catch (IOException e) {e.printStackTrace();}}connection.disconnect();// 关闭远程连接}return result;}public static void main(String[] args) {String url = "https://u.y.qq.com/cgi-bin/musicu.fcg?format=json&inCharset=utf8&outCharset=utf-8&data=%7B%22detail%22:%7B%22module%22:%22musicToplist.ToplistInfoServer%22,%22method%22:%22GetDetail%22,%22param%22:%7B%22topId%22:4,%22offset%22:0,%22num%22:120,%22period%22:%222019-12-20%22%7D%7D%7D";String response = HttpUtil.doGet(url);System.out.println(response);}
}
有什么问题或者爬虫需求,欢迎评论区留言
qq音乐排行榜数据爬取相关推荐
- Python爬虫-CSDN博客排行榜数据爬取
文章目录 前言 网络爬虫 搜索引擎 爬虫应用 谨防违法 爬虫实战 网页分析 编写代码 运行效果 反爬技术 前言 开始接触 CTF 网络安全比赛发现不会写 Python 脚本的话简直寸步难行--故丢弃 ...
- python爬虫,2020年《财富》中国500强排行榜数据爬取源码
一个简单的demo,python爬虫,其实是以前的存货,很久很久没有写爬虫了,渣渣更渣了啊! 爬取财富中文网,2020年<财富>中国500强排行榜相关数据,数据都在网页源码里,结构也比较清 ...
- 中国500强排行榜数据爬取,看看都有哪些大佬
前言 一个简单的demo,python爬虫,其实是以前的存货,很久很久没有写爬虫了,渣渣更渣了啊! ( 想要学习Python?Python学习交流群:1039649593,满足你的需求,资料都已经上传 ...
- 2020年《财富》中国500强排行榜数据爬取,看看都有哪些
前言 一个简单的demo,python爬虫,其实是以前的存货,很久很久没有写爬虫了,渣渣更渣了啊! 爬取财富中文网,2020年<财富>中国500强排行榜相关数据,数据都在网页源码里,结构也 ...
- python爬取qq音乐标签_Python爬取qq音乐的过程实例
一.前言 qq music上的音乐还是不少的,有些时候想要下载好听的音乐,但有每次在网页下载都是烦人的登录什么的.于是,来了个qqmusic的爬虫.至少我觉得for循环爬虫,最核心的应该就是找到待爬元 ...
- python爬取qq音乐周杰伦_Python爬取20万条评论,告诉你周杰伦为啥弄崩QQ音乐?
作者 | 哈哈浩 责编 | 伍杏玲 9 月 16 日晚间,周董在朋友圈发布了最新单曲<说好不哭>. 发布后,真的让一波人哭了,一群想抢鲜听的小伙伴直接泪奔. 因为 QQ 音乐直接被搞崩了! ...
- python爬取qq音乐周杰伦_Python爬取QQ音乐url及批量下载
QQ音乐还是有不少的好音乐,有些时候想要下载好听的音乐,如果在网页下载都是还需要登录什么的.于是,来了个QQmusic的爬虫.至少我觉得for循环爬虫,最核心的应该就是找到待爬元素所在url吧. 参考 ...
- python爬取网易云音乐排行榜数据
python爬取网易云音乐排行榜歌曲及评论 网易云音乐排行榜歌曲及评论爬取 主要注意问题:selenium 模拟登录.iframe标签定位.页面元素提取. 在利用selenium定位元素并取值的过程中 ...
- 照葫芦画瓢之python爬虫系列----(2)初次爬取简单的动态网页数据(网易、QQ音乐排行榜)
感谢提供素材的同学,无论好坏,高低,我都真心佩服你:参考文章地址:https://mp.weixin.qq.com/s/AXr8BjR_tU-E9YBo-mLVlg 爬取网易云音乐榜单 在上一篇的文章 ...
- 知瓜数据爬取-机构排行榜
采用fiddler对知瓜数据的机构排行榜进行爬取,如下图: 可以看到我们想要爬取的排行榜网址为 2020年5月,月榜:http://api.zhigua.cn/v1/rank/GetLiveOrgSc ...
最新文章
- flask常见面试题
- .NET获取机器信息
- python 从入门到跑路
- 对C语言进行调试的最好方法是什么?
- 查询同一组的最大最小值及明细
- php项目升级包制作,PHP项目安全:PHP的安装与升级
- redhat7 linux修改语言,RedHatLinux7.1中语言化完全攻略(二)
- 高斯09linux教程,Gaussian 09的安装与使用
- lcd显示c语言程序,1602液晶简单显示程序
- 楚天音乐台的在线广播的URL代码
- 用opencv压缩图片
- 马哥教育SRE笔记【作业】week02
- c语言windows文本框,windows编程 如何创建文本框?
- ubuntu删除桌面快捷程序
- Speedtest在线测试html,配置HTML5 Speedtest测试本地与服务器之间的速度
- centos6和centos7的主要区别和版本选择
- The Joel Test:Joel 用来评价软件开发团队成熟度的12个问题
- JAVA多线程基础篇-关键字synchronized
- 浅谈DevSecOps工具链中的源代码安全保障
- 2010年下半年 系统集成项目管理工程师 下午试卷