buildAppId()]); } //var_dump(buildAppId());die;   // 存储用户 唯一值 如果有人需要授权使用 则 生成appid 之后填写到这里 ,生成方法 在地址后面加上 build=1 即可生成 function appId() {     $data[] = '35FCB049-8B12-BB5B-69C6-3C31708B792C';//酷Q机器人调用     $data[] = 'D19DDCB1-38FA-3F40-6A29-04CF98DAC19A';// ...     $data[] = '0084DA25-0FAB-D163-099E-E9C67CF87E65';// ...     $data[] = '9CA2B554-CCDC-72CF-34BD-AE704AF74F99';// ...     return $data; }   /**  * 签名  * [url=home.php?mod=space&uid=952169]@Param[/url] $appSecret  * @param $params  * [url=home.php?mod=space&uid=155549]@Return[/url] string  */ function buildSign($appId, $params) {     unset($params['sign']);     ksort($params);     $text = '';     foreach ($params as $k => $v) {         $text .= $k . $v;     }     return strtoupper(md5(md5($appId . $text . $appId))); }   if (!isset($_GET['appid']) || !$_GET['appid'] || !in_array($_GET['appid'], appId())) {     toJson("授权失败", 400); } if (!isset($_GET['sign']) || !$_GET['sign']) {     toJson("缺少签名参数、请重试", 400); } // 验证签名是否正确 $sign = buildSign($_GET['appid'], $_GET); if ($sign != $_GET['sign']) {     toJson("签名错误,请稍候重试", 400, $sign); }   // 获取cookie $cookie = '';   // 网络请求方法 function httpRequest($url, $method, $postfields = null, $headers = array(), $debug = false) {     $method = strtoupper($method);     $ci = curl_init();     /* Curl settings */     curl_setopt($ci, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0);     curl_setopt($ci, CURLOPT_HTTPHEADER, array('Client_Ip: ' . mt_rand(0, 255) . '.' . mt_rand(0, 255) . '.' . mt_rand(0, 255) . '.' . mt_rand(0, 255)));//优点:伪造成本低,通杀90%系统     curl_setopt($ci, CURLOPT_HTTPHEADER, array('X-Forwarded-For: ' . mt_rand(0, 255) . '.' . mt_rand(0, 255) . '.' . mt_rand(0, 255) . '.' . mt_rand(0, 255)));//优点:伪造成本低,通杀90%系统     curl_setopt($ci, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.2; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0");     curl_setopt($ci, CURLOPT_CONNECTTIMEOUT, 60); /* 在发起连接前等待的时间,如果设置为0,则无限等待 */     curl_setopt($ci, CURLOPT_TIMEOUT, 7); /* 设置cURL允许执行的最长秒数 */     curl_setopt($ci, CURLOPT_RETURNTRANSFER, true);     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); // https请求 不验证证书和hosts         curl_setopt($ci, CURLOPT_SSL_VERIFYHOST, FALSE); // 不从证书中检查SSL加密算法是否存在     }     //curl_setopt($ci, CURLOPT_HEADER, true); /*启用时会将头文件的信息作为数据流输出*/     curl_setopt($ci, CURLOPT_FOLLOWLOCATION, 1);     curl_setopt($ci, CURLOPT_MAXREDIRS, 2);/*指定最多的HTTP重定向的数量,这个选项是和CURLOPT_FOLLOWLOCATION一起使用的*/     curl_setopt($ci, CURLOPT_HTTPHEADER, $headers);     curl_setopt($ci, CURLINFO_HEADER_OUT, true);     /*curl_setopt($ci, CURLOPT_COOKIE, $Cookiestr); * *COOKIE带过去** */     $response = curl_exec($ci);     $requestinfo = curl_getinfo($ci);     $http_code = curl_getinfo($ci, CURLINFO_HTTP_CODE);     if ($debug) {         echo "=====post data======\r\n";         var_dump($postfields);         echo "=====info===== \r\n";         print_r($requestinfo);         echo "=====response=====\r\n";         print_r($response);     }     curl_close($ci);     return $response;     //return array($http_code, $response,$requestinfo); }   // 响应 json 格式的参数 function toJson($msg, $code = 200, $data = []) {     header('Content-Type:application/json; charset=utf-8');     $array['msg'] = $msg;     $array['code'] = $code;     $array['data'] = $data;     exit(json_encode($array)); }   // 短网址转换 function baiDuDwz($longUrl) {     $host = 'https://dwz.cn';     $path = '/admin/v2/create';     $url = $host . $path;     $method = 'POST';     $content_type = 'application/json';   // TODO: 设置Token     $token = 'd7852c1ffabbf77670845258309ae352';   // TODO:设置待注册长网址     $bodys = array('Url' =>$longUrl, 'TermOfValidity' => 'long-term');   // 配置headers     $headers = array('Content-Type:' . $content_type, 'Token:' . $token);   // 创建连接     $curl = curl_init($url);     $ssl = preg_match('/^https:\/\//i', $host) ? TRUE : FALSE;     curl_setopt($curl, CURLOPT_URL, $url);     if ($ssl) {         curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE); // https请求 不验证证书和hosts         curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE); // 不从证书中检查SSL加密算法是否存在     }     curl_setopt($curl, CURLOPT_CUSTOMREQUEST, $method);     curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);     curl_setopt($curl, CURLOPT_FAILONERROR, false);     curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);     curl_setopt($curl, CURLOPT_HEADER, false);     curl_setopt($curl, CURLOPT_POST, true);     curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($bodys));   // 发送请求     $response = curl_exec($curl);     curl_close($curl);   // 读取响应     if (!$response){         return $longUrl;     }     try{         $response = json_decode($response,true);     }catch (Exception $e){         toJson('数据获取失败', 400);     }     if ($response['Code'] == 0 && $response['ShortUrl']){         return $response['ShortUrl'];     }else{         return $longUrl;     } }   // 截取文档ID $url = isset($_GET['url']) ? $_GET['url'] : ''; if (!$url) {     toJson('url参数不正确', 400); } $id = strstr(substr($url, strripos($url, "/") + 1), '.', true); $time = time(); $url = 'https://study.baidu.com/api/p/doc/view/download?doc_id=' . $id . '&t=' . $time . '&fastdown=undefined&t=1559828438675&fr=4';   //文档下载链接 = 网页_访问S (“https://study.baidu.com/api/p/doc/view/download?doc_id=” + 文件ID + “&fastdown=undefined&t=1559828438675&fr=4”, 0, “doc_id=” + 文件ID + “&fastdown=undefined&t=1559828438675&fr=4”, “BAIDUID=0FF2BDE0EC48DAEF1B7333B68B15EAD9:FG=1; BIDUPSID=0FF2BDE0EC48DAEF1B7333B68B15EAD9; PSTM=1559780736; BDORZ=FFFB88E999055A3F8A630C64834BD6D0; delPer=0; BDRCVFR[tFA6N9pQGI3]=mk3SLVN4HKm; H_PS_PSSID=; PSINO=7; Hm_lvt_0785cae3f3d84faf3af8cad08727feb6=1559803237,1559803355,1559803422,1559822550; USERTOKEN=” + USERTOKEN + “; expirseData={#引号expire#引号:1577750400,#引号to_end_day#引号:207,#引号space_c”, , , , , , , , , , , , , , , )   function randIp() {     return mt_rand(0, 255) . '.' . mt_rand(0, 255) . '.' . mt_rand(0, 255) . '.' . mt_rand(0, 255); }   // header 请求头 $header = [     'Host: study.baidu.com',     'User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.181 Safari/537.36',     'Accept: application/json,application/x-www-form-urlencoded, */*; q=0.01',     'Referer: ' . $url,     'Cookie: ' . $cookie,     'CLIENT-IP: ' . randIp(),     'X-FORWARDED-FOR: ' . randIp(), ]; // 请求数据 $data = [     'doc_id' => $id,     't' => $time,     'fastdown' => 'undefined',     'fr' => 4 ]; $result = httpRequest($url, 'get', $data, $header, false); if (!$result) {     toJson("系统繁忙,请稍后再试", 400); } try {     $result = json_decode($result, true); } catch (Exception $e) {     toJson("系统繁忙,请稍后再试", 400); } if ($result['error'] == 0 && $result['errmsg'] == 'success') {     $down_url = baiDuDwz($result['data']['download_url']);     toJson("解析成功", 200, $down_url); } else {     toJson("系统繁忙,请稍后再试", 400); }">
网络资源
全部免费下载

百度文库解析源码

安装教程
为防止伸手党,所有文件仅给出源码,不做文档,如需知道传递的参数,请查阅相关文件源码
代码中难免有出错的地方,或者哪里有不多的,请多多指教,不要妄下评论
所有解析均是源站解析,不借用第三方平台
如若解析失效,请与我联系,或者你自己解决,文件在上传之前都是做过测试的!

文件用的是百度短网址,百度短网址已经收费,可能会出错,可以自己修改

注意:本站资源多为网络收集,如涉及版权问题请及时与站长联系QQ:2766242327,我们会在第一时间内与您协商解决。如非特殊说明,本站所有资源解压密码均为:fulinian.com。
赞(2) 打赏
未经允许不得转载:福利年 » 百度文库解析源码

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏