"(?:.|\n)*?\<\/code\> 积分/', $content, $end); // 从页面获取今日签到的奖励 echo '执行完成:' . $end; tips: 暂时不知道 cookie 的过期时间, 也没有写其他的,这就是简单的获取访问 可能用其他语言(我一直想用 python 来弄,输入 g .."

[PHP] 25 行实现 黑客派 半自动化签到

<?php
$cookie = 'symphony=切勿公开';  // 设置cookie 这里改一改可以对cookie进行保存,然后定时执行
function get($url, $cookie, $referer = 'https://hacpai.com/settings') // 封装请求
{
    $curl = curl_init();
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); // 不进行ssl证书验证
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true); // token链接会进行 301 需要跟随
    curl_setopt($curl, CURLOPT_TIMEOUT, 60);
    curl_setopt($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36'); // 模拟用户使用的浏览器
    curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
    curl_setopt($curl, CURLOPT_COOKIE, $cookie); 
    curl_setopt($curl, CURLOPT_REFERER, $referer); // 需要注意 referer
    $result = curl_exec($curl);
    curl_close($curl);
    return $result;
}
$checkin = get('https://hacpai.com/activity/checkin', $cookie); // 获取附带 token 的检查登陆链接
preg_match('/https:\/\/hacpai\.com\/activity\/daily-checkin\?token\=(?:.|\n)*?"/', $checkin, $tokenUrl); // 正则匹配
$tokenUrl = explode('"', $setp2[0])[0]; // 上部分正则匹配后尾部多了个" 这里这样子进行清理  https://hacpai.com/activity/daily-checkin?token=XXXXXXXX"
$content = get($tokenUrl, $cookie, 'https://hacpai.com/activity/checkin'); // 访问获取到的链接
preg_match('/今日签到获得 \<code\>(?:.|\n)*?\<\/code\> 积分/', $content, $end); // 从页面获取今日签到的奖励
echo '执行完成:' . $end;

tips: 暂时不知道 cookie 的过期时间, 也没有写其他的,这就是简单的获取访问 可能用其他语言(我一直想用 python 来弄,输入 github 账号密码自动登陆访问,但是这样就不够简单.... 虽然每天只要执行一次~ )更加方便
(定时执行,稍微改一改就好)

  • 黑客派

    黑客派是 B3log 开源社区的线上论坛,这里主要汇聚了程序员和设计师。HacPai 分别取 Hacker / Painter 的头三个字母组成,源自《黑客与画家》。

    我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

    更多细节请浏览黑客派简介

    305 引用 • 6199 回帖 • 753 关注
  • 签到
    33 引用 • 321 回帖 • 6 关注
  • PHP

    PHP(Hypertext Preprocessor)是一种开源脚本语言。语法吸收了 C 语言、 Java 和 Perl 的特点,主要适用于 Web 开发领域,据说是世界上最好的编程语言。

    113 引用 • 399 回帖 • 626 关注
8 回帖   
请输入回帖内容...
  • Eddie

    @88250 他的 token 是不是暴露了???

    1 回复
  • 88250      

    已经更新正文内容,感谢提醒。

    1 回复
  • mufengcoding        

    token 是不变的吗

    1 回复
  • 88250      

    会变的,但是老的不会过期。这一块的确有安全问题,以后会修正。

    1 回复
  • illn      

    重新登陆老的 token 依旧生效么?

    1 回复
  • 88250      

    目前是的,老的 token 不会过期。

    1 回复
  • illn      

    这个可能需要重新设计了...

    1 回复
  • 88250      

    已经加入到任务列表了,后续会改进的,放心。

请输入回帖内容 ...