Explorar el Código

Merge branch 'master' of https://git.97admin.com:433/chendeben/taoqu

chendeben hace 6 años
padre
commit
8715aae542

+ 5 - 1
App/Api/Config/Route.php

@@ -15,7 +15,11 @@ class Route extends Config
     protected static $data = [
         [
             "name" => "分类",
-            "pattern" => "/category/:s.html",//api/material/sort/beauty/pre
+            "pattern" => "/category/:s/index.html",//api/material/sort/beauty/pre
+            "action" => "Heanup\App\Api\Controller\Category"
+        ],[
+            "name" => "分类",
+            "pattern" => "/category/:s/page_:s.html",//api/material/sort/beauty/pre
             "action" => "Heanup\App\Api\Controller\Category"
         ], [
             "name" => "搜索",

+ 3 - 1
App/Api/Controller/Category.php

@@ -12,7 +12,9 @@ class Category extends Controller
 {
     protected function main()
     {
-        $id = $this->getQuery()->intval("id");
+//        $id = $this->getQuery()->intval("id");
+        $id = $this->getQuery()->string("args_0");
+        $page = $this->getQuery()->string("args_1");
         $request = [
             'r' => 'l',
             'site' => 'classify',

+ 11 - 4
App/Api/Model/Dataoke.php

@@ -19,9 +19,9 @@ class Dataoke
         $data = $rt->all();
         $data = array_unique($data);
         foreach ($data as $k => $url) {
-//            if (strstr($url, "tao.php") === false) {
-//                continue;
-//            }
+            if (strstr($url, "tao.php") === false) {
+                continue;
+            }
             $query = parse_url($url);
 
             $t = parse_query($query['query']);
@@ -57,7 +57,14 @@ class Dataoke
                     } else {
                         $s = "";
                     }
-                    $new_url = "/category/" . $t['cid'] . ".html".$s;
+                    if ($t['page']){
+                        $new_url = "/category/".$t['cid']."/page_" . $t['page'] . ".html".$s;
+                        $content = str_replace('"' . $url . '"', '"' . $new_url . '"', $content);
+                        $url=htmlentities($url);
+                        $content = str_replace('"' . $url . '"', '"' . $new_url . '"', $content);
+                    }else{
+                        $new_url = "/category/" . $t['cid'] . "/index.html".$s;
+                    }
                     $content = str_replace('"' . $url . '"', '"' . $new_url . '"', $content);
                 } else {
                     if ($t['id']) {

+ 0 - 51
App/Script/Controller.php

@@ -1,51 +0,0 @@
-<?php
-
-namespace Heanup\App\Script;
-
-
-use Heanup\Frame\Helper;
-use Heanup\Frame\Logger;
-
-abstract class Controller extends \Heanup\Frame\Controller
-{
-
-    /**
-     * 获取命令行参数
-     * @return array
-     */
-    protected function getArguments()
-    {
-        return Helper::getArguments();
-    }
-
-    /**
-     * 记录下运行日志
-     */
-    public function after()
-    {
-        parent::after();
-        Logger::debug('', 'runtime');
-    }
-
-    protected function addLogs($msg,$file="admin")
-    {
-        Logger::setLog($msg, $file);
-    }
-    /**
-     * 输出错误信息
-     *
-     * @param int $code
-     * @param string $message
-     */
-    protected function showError($code = 0, $message = '')
-    {
-        $output = array(
-            'code' => intval($code),
-            'message' => $message,
-            'data' => []
-        );
-        print_r($output);
-//        exit();
-    }
-
-}

+ 0 - 94
App/Script/Controller/Check.php

@@ -1,94 +0,0 @@
-<?php
-
-
-namespace Heanup\App\Script\Controller;
-
-
-use Heanup\App\Api\Package\Database\Proxy;
-use Heanup\App\Script\Controller;
-
-class Check extends Controller
-{
-    protected function main()
-    {
-        $_status=1;
-        while (true){
-            $ips=Proxy::select([],['status'=>$_status]);
-            $_status=1-$_status;
-            foreach ($ips as $ip) {
-                $status=$this->check_proxy_ip_info($ip['ip'].":".$ip['port']);
-                if (!$status){
-                    echo sprintf("%s无效,已删除",$ip['ip'] ). PHP_EOL;
-                    Proxy::update(['status'=>0], ['id'=>$ip['id']]);
-                }else{
-                    echo sprintf("%s:%s有效",$ip['ip'],$ip['port'] ). PHP_EOL;
-                }
-
-            }
-            echo "休眠30s" . PHP_EOL;
-            sleep(30);
-        }
-
-    }
-    /**
-     * +-----------------------------------------------------------------------------
-     * 检查代理ip信息有效性
-     * +-----------------------------------------------------------------------------
-     * @param string $proxy_ip [117.95.100.126:8998]
-     * @param int $times 执行检查次数
-     * @return bool
-     * @author elinx <654753115@qq.com> 2016-07-29
-     * +-----------------------------------------------------------------------------
-     */
-    function check_proxy_ip_info($proxy_ip = '', $times = 1)
-    {
-        $status = false;
-        $header = array(
-            // "GET / HTTP/1.1",
-            // "HOST: www.baidu.com",
-            "accept: application/json",
-            "accept-encoding: gzip, deflate",
-            "accept-language: en-US,en;q=0.8",
-            "content-type: application/json",
-            "user-agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36",
-        );
-        $url = 'http://www.baidu.com/';
-        $result['succeed_times'] = 0; //成功次数
-        $result['defeat_times'] = 0; //失败次数
-        $result['total_spen'] = 0; //总用时
-        $ip = explode(":", $proxy_ip);
-        for ($i = 0; $i < $times; $i++) {
-            $curl = curl_init();
-            curl_setopt($curl, CURLOPT_URL, $url); //设置传输的url
-            curl_setopt($curl, CURLOPT_HTTPHEADER, $header); //发送http报头
-            curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
-            curl_setopt($curl, CURLOPT_ENCODING, 'gzip,deflate'); // 解码压缩文件
-            curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); //不验证证SSL书
-            curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); //不验证SSL证书
-
-            curl_setopt($curl, CURLOPT_HTTPHEADER, array(
-                'Client_Ip: ' . $ip,
-            ));
-            curl_setopt($curl, CURLOPT_HTTPHEADER, array(
-                'X-Forwarded-For: ' . $ip,
-            ));
-            curl_setopt($curl, CURLOPT_PROXYTYPE, CURLPROXY_HTTP);
-            curl_setopt($curl, CURLOPT_PROXY, $proxy_ip);
-
-            curl_setopt($curl, CURLOPT_COOKIEFILE, dirname(__FILE__) . '/cookie.txt');
-            curl_setopt($curl, CURLOPT_COOKIEJAR, dirname(__FILE__) . '/cookie.txt');
-            curl_setopt($curl, CURLOPT_TIMEOUT, 10); // 设置超时限制防止死循环
-            // $response_header = curl_getinfo($curl); // 获取返回response报头
-            $content = curl_exec($curl);
-            if (strstr($content, '百度一下,你就知道')) {
-                $status = true;
-                break;
-            } else {
-                $status = false;
-            }
-
-            // $result['list'][$i]['response_header'] = $response_header;
-        }
-        return $status;
-    }
-}

+ 0 - 186
App/Script/Controller/Server.php

@@ -1,186 +0,0 @@
-<?php
-/**
- * Created by PhpStorm.
- * User: chendeben
- * Date: 2018/8/31
- * Time: 下午9:35
- */
-
-namespace Heanup\App\Script\Controller;
-
-
-use Exception;
-use Heanup\App\Api\Package\Database\Proxy;
-use Heanup\App\Script\Controller;
-use Heanup\Library\Curl;
-
-class Server extends Controller
-{
-
-    /**
-     * 执行逻辑
-     * @throws Exception
-     */
-    protected function main()
-    {
-        while (true){
-            echo "开始获取IP" . PHP_EOL;
-            $ips = $this->get_ip();
-            $this->check_ip($ips);
-            echo "休眠30s" . PHP_EOL;
-            sleep(30);
-        }
-//        $ips=Proxy::select();
-
-
-    }
-
-    private function check_ip($ip_arr)
-    {
-
-
-        foreach ($ip_arr as $key => $value) {
-
-
-            $response = $this->check_proxy_ip_info($value);
-            $ips = explode(":", $value);
-            //将结果存入数据库
-            if ($response) {
-                $insert = [
-                    'ip' => $ips[0],
-                    'port' => $ips[1],
-                    'status' => 1
-                ];
-                Proxy::replace($insert, ['ip' => $ips[0], 'port' => $ips[1]]);
-                echo $value . "\tsuccess " . PHP_EOL;
-            } else {
-                Proxy::update(['status' => 0], ['ip' => $ips[0], 'port' => $ips[1]]);
-                echo $value . "\terror  " . PHP_EOL;
-            }
-
-        }
-    }
-
-    //获取各大网站代理IP
-    private function get_ip()
-    {
-        $ip_arr = [];
-        echo "正在获取第一个IP列表" . PHP_EOL;
-        $ip_arr = $this->get_xici_ip($ip_arr);
-        echo "正在获取第二个IP列表" . PHP_EOL;
-        $ip_arr = $this->get_kuaidaili_ip($ip_arr);
-        return $ip_arr;
-    }
-
-    private function get_xici_ip($ip_arr)
-    {
-        for ($i = 1; $i <= 10; $i++) {
-            echo sprintf("正在获取xici第%s页IP列表", $i) . PHP_EOL;
-            $url = sprintf("http://www.xicidaili.com/nn/%s", intval($i));
-            $infoContent = Curl::get($url);
-            $this->convert_encoding($infoContent);
-            preg_match_all('/<tr.*>[\s\S]*?<td class="country">[\s\S]*?<\/td>[\s\S]*?<td>(.*?)<\/td>[\s\S]*?<td>(.*?)<\/td>/', $infoContent, $match);
-
-            $host_arr = $match[1];
-            $port_arr = $match[2];
-            foreach ($host_arr as $key => $value) {
-                $ip_arr[] = $host_arr[$key] . ":" . $port_arr[$key];
-            }
-            sleep(2);
-        }
-
-        print_r($ip_arr);
-        return $ip_arr;
-    }
-
-    private function get_kuaidaili_ip($ip_arr)
-    {
-        for ($i = 1; $i <= 10; $i++) {
-            echo sprintf("正在获取kuaidaili第%s页IP列表", $i) . PHP_EOL;
-            $url = 'https://www.kuaidaili.com/free/inha/' . $i;
-            $infoContent = Curl::get($url);
-            $this->convert_encoding($infoContent);
-
-            preg_match_all('/<td data-title="IP">(.*?)<\/td>/', $infoContent, $host);
-            preg_match_all('/<td data-title="PORT">(.*?)<\/td>/', $infoContent, $port);
-
-            $host_arr = $host[1];
-            $port_arr = $port[1];
-            foreach ($host_arr as $key => $value) {
-                $ip_arr[] = $host_arr[$key] . ":" . $port_arr[$key];
-            }
-            sleep(2);
-        }
-        print_r($ip_arr);
-        return $ip_arr;
-    }
-
-    /**
-     * +-----------------------------------------------------------------------------
-     * 检查代理ip信息有效性
-     * +-----------------------------------------------------------------------------
-     * @param string $proxy_ip [117.95.100.126:8998]
-     * @param int $times 执行检查次数
-     * @return bool
-     * @author elinx <654753115@qq.com> 2016-07-29
-     * +-----------------------------------------------------------------------------
-     */
-    function check_proxy_ip_info($proxy_ip = '', $times = 1)
-    {
-        $status = false;
-        $header = array(
-            // "GET / HTTP/1.1",
-            // "HOST: www.baidu.com",
-            "accept: application/json",
-            "accept-encoding: gzip, deflate",
-            "accept-language: en-US,en;q=0.8",
-            "content-type: application/json",
-            "user-agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36",
-        );
-        $url = 'http://www.baidu.com/';
-        $result['succeed_times'] = 0; //成功次数
-        $result['defeat_times'] = 0; //失败次数
-        $result['total_spen'] = 0; //总用时
-        $ip = explode(":", $proxy_ip);
-        for ($i = 0; $i < $times; $i++) {
-            $curl = curl_init();
-            curl_setopt($curl, CURLOPT_URL, $url); //设置传输的url
-            curl_setopt($curl, CURLOPT_HTTPHEADER, $header); //发送http报头
-            curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
-            curl_setopt($curl, CURLOPT_ENCODING, 'gzip,deflate'); // 解码压缩文件
-            curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); //不验证证SSL书
-            curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); //不验证SSL证书
-
-            curl_setopt($curl, CURLOPT_HTTPHEADER, array(
-                'Client_Ip: ' . $ip,
-            ));
-            curl_setopt($curl, CURLOPT_HTTPHEADER, array(
-                'X-Forwarded-For: ' . $ip,
-            ));
-            curl_setopt($curl, CURLOPT_PROXYTYPE, CURLPROXY_HTTP);
-            curl_setopt($curl, CURLOPT_PROXY, $proxy_ip);
-
-            curl_setopt($curl, CURLOPT_COOKIEFILE, dirname(__FILE__) . '/cookie.txt');
-            curl_setopt($curl, CURLOPT_COOKIEJAR, dirname(__FILE__) . '/cookie.txt');
-            curl_setopt($curl, CURLOPT_TIMEOUT, 10); // 设置超时限制防止死循环
-            // $response_header = curl_getinfo($curl); // 获取返回response报头
-            $content = curl_exec($curl);
-            if (strstr($content, '百度一下,你就知道')) {
-                $status = true;
-                break;
-            } else {
-                $status = false;
-            }
-
-            // $result['list'][$i]['response_header'] = $response_header;
-        }
-        return $status;
-    }
-
-    private function convert_encoding(&$str)
-    {
-        $encode = mb_detect_encoding($str, ['GB2312', 'UTF-8', 'GBK', 'ASCII']);
-        $str = iconv($encode, 'utf-8//TRANSLIT//IGNORE', $str);
-    }
-
-}

+ 0 - 85
App/Script/Controller/Task.php

@@ -1,85 +0,0 @@
-<?php
-
-
-namespace Heanup\App\Script\Controller;
-
-
-use Heanup\App\Api\Model\Dataoke;
-use Heanup\App\Api\Package\Database\Goods;
-use Heanup\App\Api\Package\Database\WechatTask;
-use Heanup\App\Script\Controller;
-use Heanup\Library\WechatLib;
-
-class Task extends Controller
-{
-    protected function main()
-    {
-
-        while (true) {
-            try {
-
-
-                //开始商品采集
-                $dataoke = new Dataoke();
-                $wechat['wxid_saebe60wd0mi22'] = WechatLib::getInstance("http://myhome.97admin.com:8074/send");
-                $wechat['wxid_2tv9hne5x9bm22'] = WechatLib::getInstance("http://myhome.97admin.com:8073/send");
-                $hour = intval(date("H"));
-                $key = "/tmp/get_data_v2_" . date("YmdH");
-                $data = file_get_contents($key);
-                if (!$data) {
-                    Goods::delete([':add_time' => date("Y-m-d H:i:s", time() - 86400 * 2)], "add_time<:add_time");
-                    for ($i = 1; $i <= 4; $i++) {
-                        $dataoke->getProducts($i);
-                    }
-                    file_put_contents($key, 1);
-                }
-                //商品采集结束,开始进行消息推送
-                if ($hour >= 7 && $hour <= 24) {
-                    //收集待推送的群组列表
-                    $configs = $task_config = WechatTask::select([], ['status' => 1], "", null, 0, ['id' => false]);
-                    $result = $dataoke->send(0);
-                    while (!$result) {
-                        $result = $dataoke->send(0);
-                    }
-                    foreach ($configs as $item) {
-                        if ($item['id'] != 1) {
-                            $result = $dataoke->send(0, $item['user'], $result['data']);
-                        }
-                        if (!$result) {
-                            continue;
-                        }
-                        echo date("Y-m-d H:i:s") . "\t正在发送" . $item['user'] . "的宝贝:\t" . $result['data']['dtitle'] . PHP_EOL;
-                        if ($item['id'] == 1) {
-                            $wechat[$item['robot_wxid']]->sendImageMsg($result['pic'], $item['robot_wxid'], $item['group_id']);
-                            sleep(1);
-                            $wechat[$item['robot_wxid']]->sendTextMsg($result['msg'], $item['robot_wxid'], $item['group_id']);
-                            sleep(1);
-                            $_key = "/tmp/cache_" . $item['robot_wxid'];
-                            $date = intval(file_get_contents($_key));
-                            if (time() - $date > 3600 * 4 && $hour < 20) {
-                                $wechat[$item['robot_wxid']]->sendImageMsg("https://www.phplife.net/ele.jpg", $item['robot_wxid'], '6657767651@chatroom');
-                                file_put_contents($_key, time());
-                            }
-                        } else {
-                            $wechat[$item['robot_wxid']]->sendTextMsg($result['msg'], $item['robot_wxid'], $item['group_id']);
-                            sleep(1);
-                            $wechat[$item['robot_wxid']]->sendImageMsg($result['pic'], $item['robot_wxid'], $item['group_id']);
-                            sleep(1);
-                        }
-
-                    }
-                    $sleep = rand(500, 800);
-                    echo "休息" . $sleep . "秒" . PHP_EOL;
-                    sleep($sleep);
-                } else {
-                    echo "当前时段不支持发送消息!";
-                    sleep(1801);
-                }
-
-            } catch (\Exception $exception) {
-                print_r($exception);
-            }
-        }
-
-    }
-}

+ 0 - 13
App/Script/Controller/cookie.txt

@@ -1,13 +0,0 @@
-# Netscape HTTP Cookie File
-# http://curl.haxx.se/docs/http-cookies.html
-# This file was generated by libcurl! Edit at your own risk.
-
-.baidu.com	TRUE	/	FALSE	3708582133	BAIDUID	181AB8E9C8259EED03E2A7A36579D046:FG=1
-.baidu.com	TRUE	/	FALSE	3708582133	BIDUPSID	181AB8E9C8259EED03E2A7A36579D046
-.baidu.com	TRUE	/	FALSE	3708582133	PSTM	1561098486
-.baidu.com	TRUE	/	FALSE	0	delPer	0
-www.baidu.com	FALSE	/	FALSE	0	BDSVRTM	0
-www.baidu.com	FALSE	/	FALSE	0	BD_HOME	0
-.baidu.com	TRUE	/	FALSE	0	H_PS_PSSID	1442_21088_29135_29237_28518_29098_29131_29369_28836_29220_26350_22160
-.baidu.com	TRUE	/	FALSE	1561110336	_cnzz_zz	1101
-www.baidu.com	FALSE	/	FALSE	1561111167	EHBMkWrwVDCRpbJuINRKPjR	1

+ 0 - 18
App/Script/Package/Database/Code.php

@@ -1,18 +0,0 @@
-<?php
-
-namespace Heanup\App\Script\Package\Database;
-
-use Heanup\Frame\Package\Database\Single;
-
-class Code extends Single
-{
-
-    const CONFIG_CLASS = 'MySQL\\Shadowsocks';
-
-    protected static $tableName = 'invite_code';
-
-    protected static $fields = array();
-
-    protected static $primaryKey = 'id';
-
-}