网易云音乐下载

点击下载按钮,网易云直接进行下载,不弹出登录框,推荐进入单首歌播放页再下载。

  1. // ==UserScript==
  2. // @name 网易云音乐下载
  3. // @namespace http://tampermonkey.net/
  4. // @version 0.1
  5. // @description 点击下载按钮,网易云直接进行下载,不弹出登录框,推荐进入单首歌播放页再下载。
  6. // @author ZLOE
  7. // @match https://music.163.com/*song?id=*
  8. // @match https://music.163.com/*discover/toplist
  9. // @grant GM_xmlhttpRequest
  10. // @require https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js
  11. // 作者博客:https://zhang18.top
  12. // ==/UserScript==
  13.  
  14. (function() {
  15. 'use strict';
  16. //获取音乐,单首播放的页面
  17. function get_music(){
  18. var id = window.location.href.split('id=')[1]
  19. var url = 'https://api.imjad.cn/cloudmusic/?type=song&id='+id
  20. console.log(id)
  21. GM_xmlhttpRequest({
  22. method: "GET",
  23. url: url,
  24. onload: function(res) {
  25. if (res.status == 200) {
  26. var text = res.responseText;
  27. var a = jQuery.parseJSON(text)
  28. var music_url = a.data[0].url
  29. $('.u-btni-dl').after('<a class="u-btni u-btni-dl" href="'+music_url+'" target="_blank"><i>下载</i></a>')
  30. $('.u-btni-dl').eq(0).remove()
  31. //var comment = $('.j-flag .cntwrap .f-brk').text()
  32. //console.log(comment)
  33.  
  34. }
  35. }
  36. });
  37. }
  38. //难度加倍,多首页面点击下载,有时候不灵,Bug未知
  39. function get_music_list(){
  40. $('.btns .u-btni-dl').attr('href','https://zhang18.top')
  41. $('.u-btni-dl').attr('data-res-action','ZLOE')
  42. $('.even ').on('click', '.icn-dl', function get_id() {
  43. var id = $(this).attr('data-res-id')
  44. console.log('获取id成功!')
  45. $(this).attr('data-res-action','ZLOE')
  46. var url = 'https://api.imjad.cn/cloudmusic/?type=song&id='+id
  47. GM_xmlhttpRequest({
  48. method: "GET",
  49. url: url,
  50. onload: function(res) {
  51. if (res.status == 200) {
  52. var text = res.responseText;
  53. var a = jQuery.parseJSON(text)
  54. var music_url = a.data[0].url
  55. //window.open(music_url, '_blank');
  56. window.location.href = music_url
  57. }
  58. }
  59. });
  60.  
  61. })
  62.  
  63. }
  64. //判断url
  65. function Y_Y(){
  66. var url_Y = window.location.href.split('/')[3]
  67. $('.m-layer-down').remove()
  68. if (url_Y=='discover'){
  69. console.log("多首音乐")
  70. get_music_list()
  71. }else{
  72. console.log("单首音乐")
  73. get_music()
  74. }
  75. }
  76.  
  77. //主控制程序
  78. Y_Y()
  79.  
  80. // Your code here...
  81. })();