Greasy Fork

Greasy Fork is available in English.

Douban Programme

豆瓣歌单自动生成脚本

目前为 2015-07-24 提交的版本。查看 最新版本

// ==UserScript==
// @name  Douban Programme
// @namespace https://malash.me/
// @author  Malash <[email protected]>
// @icon  http://img3.douban.com/favicon.ico
// @version 1.0.0
// @description 豆瓣歌单自动生成脚本
// @homepageURL https://github.com/malash/douban-programme
// @include http://music.douban.com/*
// ==/UserScript==

!(function($) {
    function getCk() {
        var cookies = document.cookie.split(';');
        cookies = cookies.filter(function(cookie) {
            return $.trim(cookie).startsWith('ck=');
        });
        if (cookies.length === 0) {
            return null;
        }
        var cookie = cookies[0];
        return cookie.substring(cookie.indexOf('=') + 2, cookie.length - 1);
    }
    var ck = getCk();
    if (!ck) {
        alert('请登录后操作');
        return;
    }
    var title = $('#wrapper h1 span').html();
    if (!title) {
        alert('请在专辑页面运行')
        return;
    }
    $.post('http://music.douban.com/j/songlist/create', { sl_title: title, ck:ck }, function(result) {
        if (result.r !== 'success') {
            return;
        }
        var url = result.sl_url;
        var programmeID = parseInt(url.substring(url.lastIndexOf('/') + 1, url.length));
        console.log('添加收藏:', programmeID);
        var elItems = $('.song-item');
        for (var i = 0; i < elItems.length; i++) {
            var songId = $(elItems[i]).attr('id');
            $.ajax({
                type: 'POST',
                url: 'http://music.douban.com/j/songlist/addsong',
                data: { sl_id: programmeID, song_id: songId, ck: ck },
                async: false,
                success: function(){
                    console.log('添加歌曲', i, ':', songId);
                }
            });
            console.log('完成');
            window.location.href = url;
        }
    })
})(jQuery);