惺惺相惜,但无关风月。

用腾讯云函数实现网易云自动签到刷歌

2020-03-30 470

项目地址:Github
其他接口:接口文档
用到的工具:腾讯云函数
首先进入腾讯云函数界面
新建空白函数 环境选择php
把本来的代码删除,然后粘贴下边的代码
<?php $localurl = "http://163api.luqiao6.com"; $username = "手机号"; $password = "密码"; //访问链接 function getcurl($url,$cookies,$headid){ $ch = curl_init(); curl_setopt($ch, CURLOPT_COOKIE, $cookies); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HEADER, $headid); $output = curl_exec($ch); curl_close($ch); return $output; } //获取日推歌单 function get_rec_res($cookies){ global $localurl; $url = $localurl."/recommend/resource"; return json_decode(getcurl($url,$cookies,0),true); } //获取歌单中歌曲 function get_song($cookies,$id){ global $localurl; $url = $localurl."/playlist/detail?id={$id}"; return json_decode(getcurl($url,$cookies,0),true); } //打卡歌曲 function daka($cookies,$id){ global $localurl; $url = $localurl."/scrobble?id={$id}&time=71&timestamp=".rand(1, 100000); getcurl($url,$cookies,0); } //签到 function qiandao($cookies){ global $localurl; $urland = $localurl."/daily_signin"; $urlpc = $localurl."/daily_signin?type=1"; getcurl($urland,$cookies,0); getcurl($urlpc,$cookies,0); } //登录 function login($username,$password){ global $localurl; $url = $localurl."/login/cellphone?phone={$username}&password={$password}"; $data = getcurl($url,0,1); if(preg_match_all('/Set-Cookie:(.*);/iU',$data,$str)==0) die($data); $cookies = $str[1][0].";".$str[1][1].";".$str[1][2].";"; return $cookies; } function run($username,$password){ global $localurl; $cookies = login($username,$password); qiandao($cookies); $songslist = get_rec_res($cookies); for($k=0;$k<(count($songslist["recommend"]));$k++){ $songlist = get_song($cookies,$songslist["recommend"][$k]["id"]); for($j=0;$j<(count($songlist["privileges"]));$j++){ daka($cookies,$songlist["privileges"][$j]["id"]); if(($j/10)==0){ sleep(1); } if(($j==(count($songlist["privileges"])-1))||$j==300){ echo "执行 {$j} 首\n"; sleep(10); break 1; } } } } function main_handler($event, $context) { global $username; global $password; run($username,$password); return "OK"; } ?>
修改 username password为你的手机号和密码
localurl api是接口地址,没有的话可以用默认的
然后点击下边的高级,超时时间设置为900
点击确定 保存
找到触发方式选项卡
定时触发→自定义触发周期→cron表达式填写 (0 1 1,12,21 * * * *)
上面这表达式的意思是每天的1点12点21点1分开始执行一次代码
也可以根据腾讯云提供的文档自行设置
https://cloud.tencent.com/document/product/583/9708
每天的多次执行保证刷歌任务的圆满完成
保存设置然后再跳转到函数代码界面
点击测试代码可行性
等待几分钟
弹出这个提示就是没问题,等待明天自动执行就可以了。
另外说一点,项目不是我的,云函数代码也不是我的,教程也是转载的,只有接口是我搭建的
所有使用过接口的,后台都有日志可以查询,我会定期清理,不放心等朋友可以自行搭建接口