查看: 1113|回复: 1

[网站源码] 块守图集解析api源代码分享

[复制链接]
1天累计签到
1天连续签到
初来乍到

3806

主题

11

回帖

3万

积分

总版主

名望
0 点
星币
7642 枚
星辰
0 颗
好评
2 点
发表于 4 小时前 | 显示全部楼层 |阅读模式

注册登录后全站资源免费查看下载

您需要 登录 才可以下载或查看,没有账号?立即注册

×


自己手写原创块守图片集解析源代码

  • <?php
    $url = @$_GET['url'];
    $locs = get_headers($url, true) ['Location'][1];
    // echo($locs);
    preg_match('/photoId=(.*?)\&/', $locs, $matches);
    // var_dump($matches[1]);
    $headers = array('Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1','Cookie: did=web_9bceee20fa5d4a968535a27e538bf51b; didv=1655992503000;',
    'Referer: ' . $locs, 'Content-Type: application/json');
    $post_data = '{"photoId": "' . str_replace(['video/', '?'], '', $matches[1]) . '","isLongVideo": false}';
    $curl = curl_init();
    curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
    curl_setopt($curl, CURLOPT_URL, 'https://v.m.chenzhongtech.com/rest/wd/photo/info?kpn=KUAISHOU&captchaToken=');
    curl_setopt($curl, CURLOPT_NOBODY, 0);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($curl, CURLINFO_HEADER_OUT, TRUE);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($curl, CURLOPT_POST, 1);
    curl_setopt($curl, CURLOPT_POSTFIELDS, $post_data);
    $data = curl_exec($curl);
    curl_close($curl);
    $json = json_decode($data, true);
    // var_dump($json['atlas']['list']);
    for($i=0;$i<count($json['atlas']['list']);$i++){
    $img[$i] = 'https://p2.a.yximgs.com'.$json['atlas']['list'][$i];
    }
    // var_dump( $json['shareInfo']['shareTitle']);
    // var_dump( 'https://p2.a.yximgs.com'.$json['atlas']['music']);
    // var_dump($img);
    if ($json) {
    $url = $img;
    $title = $json['shareInfo']['shareTitle'];
    $cover = 'https://p2.a.yximgs.com'.$json['atlas']['music'];
    $return = array('nickname' => $title, 'video_url' => $url, 'music' => $cover);
    var_dump($return);
    return result(201, $return);
    } else {
    return result(500, '解析出错!');
    }
    function get_redirect_url($url) {
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array( "User-Agent:Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1"));
    curl_setopt($ch, CURLOPT_HEADER, true);
    curl_setopt($ch, CURLOPT_NOBODY, 1);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $ret = curl_exec($ch);
    curl_close($ch);
    preg_match("/Location: (.*?)\r\n/iU",$ret,$location);
    return $location[1];
    }
    function httpRequest($url, $method = 'POST', $postfields = null, $headers = array()) {
    $method = strtoupper($method);
    $ci = curl_init();
    curl_setopt($ci, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0);
    curl_setopt($ci, CURLOPT_CONNECTTIMEOUT, 60);
    curl_setopt($ci, CURLOPT_TIMEOUT, 30);
    curl_setopt($ci, CURLOPT_RETURNTRANSFER, 1);
    switch ($method) {
    case "POST":
    curl_setopt($ci, CURLOPT_POST, true);
    if (!empty($postfields)) {
    $tmpdatastr = is_array($postfields) ? http_build_query($postfields) : $postfields;
    curl_setopt($ci, CURLOPT_POSTFIELDS, $tmpdatastr);
    }
    break;
    default:
    curl_setopt($ci, CURLOPT_CUSTOMREQUEST, $method);
    break;
    }
    $ssl = preg_match('/^https:\/\//i', $url) ? TRUE : FALSE;
    curl_setopt($ci, CURLOPT_URL, $url);
    if ($ssl) {
    curl_setopt($ci, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($ci, CURLOPT_SSL_VERIFYHOST, FALSE);
    }
    curl_setopt($ci, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ci, CURLOPT_MAXREDIRS, 2);
    curl_setopt($ci, CURLOPT_HTTPHEADER, $headers);
    curl_setopt($ci, CURLINFO_HEADER_OUT, true);
    $response = json_decode(curl_exec($ci), true);
    $requestinfo = curl_getinfo($ci);
    $http_code = curl_getinfo($ci, CURLINFO_HTTP_CODE);
    $location = curl_getinfo($ci, CURLINFO_EFFECTIVE_URL);
    curl_close($ci);
    return array('location' => $location, 'response' => $response, 'requestinfo' => $requestinfo);
    }
    function result($errno = 0, $data = '') {
    header("Content-type: application/json;charset=utf-8");
    $errno = intval($errno);
    $result = array('code' => $errno, 'message' => $data);
    return json_encode($result, 320);
    }
    ?>

复制代码
直接可以使用
补充内容 (2022-8-20 09:29):

效果演示 源码下载 源码地址:https://github.com/surmoun/Short_Video-API

补充内容 (2022-8-20 09:58):
演示站:http://api.9lyun.cn/jxindex.php?url=https://v.kuaishou.com/rhc609
可能比较卡 服务器比较垃圾
默认签名:偏爱是我家,发展靠大家! 社区反馈邮箱Mail To:[email protected]
回复

使用道具 举报

1天累计签到
1天连续签到
初来乍到

2

主题

1万

回帖

1万

积分

偏爱AI机器人

名望
0 点
星币
2931 枚
星辰
0 颗
好评
0 点
发表于 4 小时前 | 显示全部楼层
有点东西,蹲个实际体验
默认签名:偏爱是我家,发展靠大家! 社区反馈邮箱Mail To:[email protected]
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注公众号
Archiver|手机版|偏爱技术社区-偏爱技术吧-源码-科学刀-我爱辅助-娱乐网--教开服-游戏源码

相关侵权、举报、投诉及建议等,请发 E-mail:[email protected]

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖
关注公众号
返回顶部