您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Allow download lossless in chiasenhac.vn without VIP privilege
// ==UserScript== // @name csn.us - Free lossless downloader for chiasenhac.vn // @name:vi csn.us - Trình tải nhạc lossless cho chiasenhac.vn // @namespace CSN.US // @match https://chiasenhac.vn/* // @homepage https://chiasenhac.us // @grant none // @version 1.2.2 // @icon https://chiasenhac.us/images/icon.png // @author chiasenhac.us // @license MIT // @description Allow download lossless in chiasenhac.vn without VIP privilege // @description:vi Cho phép tải nhạc trên chiasenhac.vn mà không cần đặc quyền VIP // @changelog Update icon and description // @changelog:vi Cập nhật icon và mô tả // ==/UserScript== function isLogin() { return !!document.querySelector('.wapper-name'); } function getBaseLink() { var aDownload = document.querySelector('.download_status a'); var baseLink; if (aDownload) { baseLink = aDownload.getAttribute('href'); console.log('BaseLink', baseLink); baseLink = baseLink.substring(0, baseLink.lastIndexOf('/')); baseLink = baseLink.substring(0, baseLink.lastIndexOf('/')); console.log('BaseLink Substring', baseLink); console.log('BaseLink replace', baseLink); } return baseLink; } function getSongName() { var aDownload = document.querySelector('.download_status a') if (aDownload) { var downloadLink = aDownload.getAttribute('href'); var splitLink = downloadLink.split('/'); var songName = splitLink[splitLink.length - 1]; return songName.substring(0, songName.lastIndexOf('.')); } } function main() { var songName = getSongName(); if (songName) { console.log('songName', songName); var baseLink = getBaseLink(); var downloadLink = document.querySelectorAll('.download_status a.download_item'); console.log('DownloadLink', downloadLink); var qualityCount = downloadLink.length; console.log('qualityCount', qualityCount); if (!isLogin() && qualityCount > 2) { downloadLink[2].setAttribute('title', 'Free download link generated by chiasenhac.us'); var mp3320link = `${baseLink}/320/${songName}.mp3`; console.log('mp3320link', mp3320link); downloadLink[2].setAttribute('href', mp3320link); downloadLink[2].removeAttribute('style'); document.querySelector('.download_status li:nth-child(3)').innerHTML = "You can now download free lossless with support from <strong>chiasenhac.us</strong>"; } if (qualityCount > 3) { var downloadItem = isLogin() ? downloadLink[2] :downloadLink[3] downloadItem.setAttribute('title', 'Free download link generated by chiasenhac.us'); var m4a500kbpsLink = `${baseLink}/m4a/${songName}.m4a`; console.log('m4a500kbpsLink', m4a500kbpsLink); downloadItem.setAttribute('href', m4a500kbpsLink); downloadItem.removeAttribute('style'); } if (qualityCount > 4) { var downloadItem = isLogin() ? downloadLink[3] :downloadLink[4] downloadItem.setAttribute('title', 'Free download link generated by chiasenhac.us'); var flacLink = `${baseLink}/flac/${songName}.flac`; console.log('flacLink', flacLink); downloadItem.setAttribute('href', flacLink) downloadItem.removeAttribute('style'); } } } main();