コード例 #1
0
function LDd7bqg5_C($sl, $sfFw7CUsV = 0, &$b7nhgTvG8ULkB)
{
    global $RJhfKMpNS, $grab_parameters, $kgQxFsRGfcjLoo9_, $vQG590i8y, $kAiwEsZc1NNHhe9fCyn, $urls_completed, $yIjmVkxO05cWS5gTB53, $bwhMehtk1;
    $aWQSGn6KWTk7x4HBX3 = '';
    if ($grab_parameters['xs_htmlsort']) {
        fTr9xtaaPTXU("sorting..");
        @uksort($sl, 'Tqxf4L13C0B33yiyrv');
    }
    $ls = $sfFw7CUsV * 2;
    if (is_array($sl)) {
        foreach ($sl as $sk => $sn) {
            $mE5mRg2rujhrYAd59i9 = "";
            if ($GLOBALS['_iter']++ % 100 == 0) {
                fTr9xtaaPTXU(" / " . $GLOBALS['_iter'] . " / " . (time() - $_tm));
                $_tm = time();
                W5mf7Y9Huk0KaQU6();
            }
            $cLhYAB9aL2j = array();
            if (is_array($sn['pages'])) {
                if ($grab_parameters['xs_htmlsort']) {
                    fTr9xtaaPTXU("sorting..");
                    @usort($sn['pages'], 'Tqxf4L13C0B33yiyrv');
                }
                foreach ($sn['pages'] as $pg) {
                    $b7nhgTvG8ULkB++;
                    if ($b7nhgTvG8ULkB <= $yIjmVkxO05cWS5gTB53) {
                        continue;
                    }
                    $t = $pg['t'] ? $pg['t'] : basename($pg['link']);
                    $cLhYAB9aL2j[] = array('link' => $pg['link'], 'title' => $t, 'desc' => $pg['d'], 'title_clean' => str_replace('&amp;amp;', '&amp;', htmlspecialchars($t)), 'file' => basename($pg['link']));
                    $mE5mRg2rujhrYAd59i9 .= "\n<tr><td class=\"lpage\"><a href=\"" . $pg['link'] . "\" title=\"" . str_replace('&amp;amp;', '&amp;', htmlspecialchars($t)) . "\">" . $t . "</a></td></tr>";
                    if ($b7nhgTvG8ULkB % 10 == 0) {
                        zDZfnOkYHwV(array('cmd' => 'info', 'id' => 'percprog2', 'text' => number_format($b7nhgTvG8ULkB * 100 / count($urls_completed), 0) . '%'));
                    }
                    if ($b7nhgTvG8ULkB % $grab_parameters['xs_htmlpart'] == 0) {
                        $kgQxFsRGfcjLoo9_ .= Zq0MnQmsD6T2lLLfU($sk, $sn['cnt'], $sfFw7CUsV, $mE5mRg2rujhrYAd59i9);
                        $vQG590i8y[] = array('folder' => str_replace('/', ' ', $sk), 'cnt' => $sn['cnt'], 'cntmulti' => $sn['cnt'] > 1, 'level' => $sfFw7CUsV, 'alevel' => $sfFw7CUsV ? range(1, $sfFw7CUsV) : array(), 'level100' => 100 - $sfFw7CUsV, 'pages' => $cLhYAB9aL2j);
                        $mE5mRg2rujhrYAd59i9 = '';
                        $cLhYAB9aL2j = array();
                        lPT6M7drPhQPL($kgQxFsRGfcjLoo9_, $vQG590i8y);
                        $kAiwEsZc1NNHhe9fCyn++;
                        $kgQxFsRGfcjLoo9_ = '';
                        $vQG590i8y = array();
                        m0HngeVPuiULaXDb($bwhMehtk1, wJu5NxAjkFkQBpMse(array('istart' => $b7nhgTvG8ULkB, 'curpage' => $kAiwEsZc1NNHhe9fCyn)));
                    }
                }
            }
            if ($mE5mRg2rujhrYAd59i9) {
                $kgQxFsRGfcjLoo9_ .= Zq0MnQmsD6T2lLLfU($sk, $sn['cnt'], $sfFw7CUsV, $mE5mRg2rujhrYAd59i9);
                $vQG590i8y[] = array('folder' => str_replace('/', ' ', $sk), 'cnt' => $sn['cnt'], 'cntmulti' => $sn['cnt'] > 1, 'level' => $sfFw7CUsV, 'alevel' => $sfFw7CUsV ? range(1, $sfFw7CUsV) : array(), 'level100' => 100 - $sfFw7CUsV, 'pages' => $cLhYAB9aL2j);
            }
            if ($sn['elem']) {
                LDd7bqg5_C($sn['elem'], $sfFw7CUsV + 1, $b7nhgTvG8ULkB);
            }
        }
    }
    if ($sfFw7CUsV == 0 && $kgQxFsRGfcjLoo9_) {
        lPT6M7drPhQPL($kgQxFsRGfcjLoo9_, $vQG590i8y);
    }
}
コード例 #2
0
 function AdSeH3KPw4($MY9uRPqbKXzuC, &$urls_completed)
 {
     global $grab_parameters, $J951dqGyd9Mj;
     error_reporting(E_ALL & ~E_NOTICE);
     @set_time_limit($grab_parameters['xs_exec_time']);
     if ($MY9uRPqbKXzuC['bgexec']) {
         ignore_user_abort(true);
     }
     register_shutdown_function('HuD2wJN0EuqGM6r');
     if (function_exists('ini_set')) {
         @ini_set("zlib.output_compression", 0);
         @ini_set("output_buffering", 0);
     }
     $LG9QHtb6yK6qR5InZ = explode(" ", microtime());
     $Xm5TKOzcDly01EH2 = $LG9QHtb6yK6qR5InZ[0] + $LG9QHtb6yK6qR5InZ[1];
     $starttime = $euVHgD2C1lt = time();
     $Zwf4bxMTE8xK8E = $nettime = 0;
     $q5ANtD3FURVI = $MY9uRPqbKXzuC['initurl'];
     $hoWmvn1cTy_GjGL = $MY9uRPqbKXzuC['maxpg'] > 0 ? $MY9uRPqbKXzuC['maxpg'] : 10000000000.0;
     $CjkPFJQ1MJyQxogX = $MY9uRPqbKXzuC['maxdepth'] ? $MY9uRPqbKXzuC['maxdepth'] : -1;
     $nU8Mj5ZUWIEjvw = $MY9uRPqbKXzuC['progress_callback'];
     $ICDtF9k5qRIaFX = $this->eufpjMrwNSVr($grab_parameters['xs_excl_urls']);
     $PftdNZ9fEP0Z1yoaR = $this->eufpjMrwNSVr($grab_parameters['xs_incl_urls']);
     $ZxN8MjZW3uwPfqCTY = $U_QkBfcAHSK3Jphne = array();
     $iFfOUCk1sFztqp = preg_split('#[\\r\\n]+#', $grab_parameters['xs_ind_attr']);
     $r2uxsHQ7o = '#200' . ($grab_parameters['xs_allow_httpcode'] ? '|' . $grab_parameters['xs_allow_httpcode'] : '') . '#';
     if ($grab_parameters['xs_memsave']) {
         if (!file_exists(Jh02oPSmnHw)) {
             mkdir(Jh02oPSmnHw, 0777);
         } else {
             if ($MY9uRPqbKXzuC['resume'] == '') {
                 G99nA35xjYQh(Jh02oPSmnHw, '.txt');
             }
         }
     }
     foreach ($iFfOUCk1sFztqp as $ia) {
         if ($ia) {
             $is = explode(',', $ia);
             if ($is[0][0] == '$') {
                 $T9jmfo_y7aKsyLu0 = substr($is[0], 1);
             } else {
                 $T9jmfo_y7aKsyLu0 = str_replace(array('\\^', '\\$'), array('^', '$'), preg_quote($is[0], '#'));
             }
             $U_QkBfcAHSK3Jphne[] = $T9jmfo_y7aKsyLu0;
             $ZxN8MjZW3uwPfqCTY[str_replace(array('^', '$'), array('', ''), $is[0])] = array('lm' => $is[1], 'f' => $is[2], 'p' => $is[3]);
         }
     }
     if ($U_QkBfcAHSK3Jphne) {
         $bEoirRlORmPAWbBHF = implode('|', $U_QkBfcAHSK3Jphne);
     }
     $KCZQduSVvXZZGY28 = parse_url($q5ANtD3FURVI);
     if (!$KCZQduSVvXZZGY28['path']) {
         $q5ANtD3FURVI .= '/';
         $KCZQduSVvXZZGY28 = parse_url($q5ANtD3FURVI);
     }
     $H2Ce2a0HmFxl = $J951dqGyd9Mj->fetch($q5ANtD3FURVI, 0, true);
     // the first request is to skip session id
     $ZrV0VdSRuUd1C2bTbu = !preg_match($r2uxsHQ7o, $H2Ce2a0HmFxl['code']);
     if ($ZrV0VdSRuUd1C2bTbu) {
         $ZrV0VdSRuUd1C2bTbu = '';
         foreach ($H2Ce2a0HmFxl['headers'] as $k => $v) {
             $ZrV0VdSRuUd1C2bTbu .= $k . ': ' . $v . '<br />';
         }
         return array('errmsg' => '<b>There was an error while retrieving the URL specified:</b> ' . $q5ANtD3FURVI . '' . ($H2Ce2a0HmFxl['errormsg'] ? '<br><b>Error message:</b> ' . $H2Ce2a0HmFxl['errormsg'] : '') . '<br><b>HTTP Code:</b><br>' . $H2Ce2a0HmFxl['protoline'] . '<br><b>HTTP headers:</b><br>' . $ZrV0VdSRuUd1C2bTbu . '<br><b>HTTP output:</b><br>' . $H2Ce2a0HmFxl['content']);
     }
     $q5ANtD3FURVI = $H2Ce2a0HmFxl['last_url'];
     $urls_completed = array();
     $urls_ext = array();
     $urls_404 = array();
     $hCqPL8RwlB = $KCZQduSVvXZZGY28['scheme'] . '://' . $KCZQduSVvXZZGY28['host'] . (!$KCZQduSVvXZZGY28['port'] || $KCZQduSVvXZZGY28['port'] == '80' ? '' : ':' . $KCZQduSVvXZZGY28['port']);
     $pn = $tsize = $retrno = $XIlk3ZqbSYG = $x1Nsplkpc2Kdk5W = 0;
     $fjEvozDHHFDc3M3CP6e = RT9GXtyabs__A($hCqPL8RwlB . '/', Hl4O6cWdjqldW6($KCZQduSVvXZZGY28['path']));
     $Qv8G6NWw9S0ZcPxVV = parse_url($fjEvozDHHFDc3M3CP6e);
     $YWmYVMCd_Z1Jkw = preg_replace('#^.+://[^/]+#', '', $fjEvozDHHFDc3M3CP6e);
     $LwRunzk9c_gIARHp = $J951dqGyd9Mj->fetch($q5ANtD3FURVI, 0, true, true);
     $d1gUNMW50DG = str_replace($fjEvozDHHFDc3M3CP6e, '', $q5ANtD3FURVI);
     $urls_list_full = array($d1gUNMW50DG => 1);
     if (!$d1gUNMW50DG) {
         $d1gUNMW50DG = '';
     }
     $urls_list = array($d1gUNMW50DG => 1);
     $urls_list2 = $urls_list_skipped = array();
     $foaeXizKT_CpOLBpUxK = array();
     $links_level = 0;
     $rPpV2duBzldWXxW3Mr = $ref_links = $ref_links2 = array();
     $UCLXWT4Aa = 0;
     $C4eNpUO4wlSz1ZekLcc = $hoWmvn1cTy_GjGL;
     if (!$grab_parameters['xs_progupdate']) {
         $grab_parameters['xs_progupdate'] = 20;
     }
     if (isset($grab_parameters['xs_robotstxt']) && $grab_parameters['xs_robotstxt']) {
         $rCRb02h4n8Q = $J951dqGyd9Mj->fetch($hCqPL8RwlB . '/robots.txt');
         if ($hCqPL8RwlB . '/' != $fjEvozDHHFDc3M3CP6e) {
             $VlDIpY74Sn = $J951dqGyd9Mj->fetch($fjEvozDHHFDc3M3CP6e . 'robots.txt');
             $rCRb02h4n8Q['content'] .= "\n" . $VlDIpY74Sn['content'];
         }
         $ra = preg_split('#user-agent:\\s*#im', $rCRb02h4n8Q['content']);
         $t7fVZsI8scAQ = array();
         for ($i = 1; $i < count($ra); $i++) {
             preg_match('#^(\\S+)(.*)$#s', $ra[$i], $NyaN_Hy_i);
             if ($NyaN_Hy_i[1] == '*' || strstr($NyaN_Hy_i[1], 'google')) {
                 preg_match_all('#^disallow:\\s*(\\S*)#im', $NyaN_Hy_i[2], $rm);
                 for ($pi = 0; $pi < count($rm[1]); $pi++) {
                     if ($rm[1][$pi]) {
                         $t7fVZsI8scAQ[] = str_replace('\\$', '$', str_replace('\\*', '.*', preg_quote($rm[1][$pi], '#')));
                     }
                 }
             }
         }
         for ($i = 0; $i < count($t7fVZsI8scAQ); $i += 200) {
             $k2mbaYG7Adhhp0nn[] = implode('|', array_slice($t7fVZsI8scAQ, $i, 200));
         }
     } else {
         $k2mbaYG7Adhhp0nn = array();
     }
     if ($grab_parameters['xs_inc_ajax']) {
         $grab_parameters['xs_proto_skip'] = str_replace('\\#', '\\#[^\\!]', $grab_parameters['xs_proto_skip']);
     }
     $GemKMfObNXtkeAmJ = $grab_parameters['xs_exc_skip'] != '\\.()';
     $chfKQ2jb8QOC = $grab_parameters['xs_inc_skip'] != '\\.()';
     $grab_parameters['xs_inc_skip'] .= '$';
     $grab_parameters['xs_exc_skip'] .= '$';
     if ($grab_parameters['xs_debug']) {
         $_GET['ddbg'] = 1;
         PvFdgEcx0laOpBsp();
     }
     $dr1lN9apl = 0;
     $u0pk35zQbvIj4 = array();
     $url_ind = 0;
     $cnu = 1;
     $pf = cVhR96lmkjBRF(fSB9ZrUIK4aICK6XAM . hE3J3lTm1xrJcz5CHD, 'w');
     fclose($pf);
     $hf9XRbEeY5Kx6GFPKr = false;
     if ($MY9uRPqbKXzuC['resume'] != '') {
         $AfrvOmU2Ccm9JZj = @W4Xzu7_XRKxGlHA(pUvA4zhAkYZK2Nd8A(fSB9ZrUIK4aICK6XAM . t_LlD5p6PQKvgvIZpP9));
         if ($AfrvOmU2Ccm9JZj) {
             $hf9XRbEeY5Kx6GFPKr = true;
             echo 'Resuming the last session (last updated: ' . date('Y-m-d H:i:s', $AfrvOmU2Ccm9JZj['time']) . ')' . "\n";
             extract($AfrvOmU2Ccm9JZj);
             $Xm5TKOzcDly01EH2 -= $ctime;
             $dr1lN9apl = $ctime;
             unset($AfrvOmU2Ccm9JZj);
         }
     }
     $UDWzqkbDps6LuIKb = 0;
     if (!$hf9XRbEeY5Kx6GFPKr) {
         if ($grab_parameters['xs_moreurls']) {
             $mu = preg_split('#[\\r\\n]+#', $grab_parameters['xs_moreurls']);
             foreach ($mu as $EzWAzoc3QpSqUg) {
                 $EzWAzoc3QpSqUg = str_replace($fjEvozDHHFDc3M3CP6e, '', $EzWAzoc3QpSqUg);
                 if (!strstr($EzWAzoc3QpSqUg, '://')) {
                     $urls_list[$EzWAzoc3QpSqUg]++;
                 }
             }
         }
         if ($grab_parameters['xs_prev_sm_base']) {
             global $IzwUzdzdmh6HP5om5Bi;
             $qyrBCAYqEMp = basename($grab_parameters['xs_smname']);
             $IzwUzdzdmh6HP5om5Bi->QxoEWBD1O1qswq3ii = $grab_parameters['xs_compress'] == 1 ? '.gz' : '';
             $LlGyBWOGj6 = $IzwUzdzdmh6HP5om5Bi->JAvBiMmjzH($qyrBCAYqEMp, 0, $fjEvozDHHFDc3M3CP6e);
             if (!$grab_parameters['xs_prev_sm_base_min'] || count($LlGyBWOGj6) > $grab_parameters['xs_prev_sm_base_min']) {
                 $urls_list = array_merge($urls_list, $LlGyBWOGj6);
             }
             unset($LlGyBWOGj6);
         }
         $UDWzqkbDps6LuIKb = count($urls_list);
         $urls_list_full = $urls_list;
         $cnu = count($urls_list);
     }
     $ZmiKZZ6x4mdoNJaJt = explode('|', $grab_parameters['xs_force_inc']);
     sleep(1);
     @xnDpYg7WwA0(fSB9ZrUIK4aICK6XAM . hE3J3lTm1xrJcz5CHD);
     if ($urls_list) {
         do {
             list($VJrkoghoW, $CmZLfMuLMSEZIiTevcX) = each($urls_list);
             $uq8LJ8X9g0o = $CmZLfMuLMSEZIiTevcX > 0 && $CmZLfMuLMSEZIiTevcX < 1 ? $CmZLfMuLMSEZIiTevcX : 0;
             $url_ind++;
             fTr9xtaaPTXU("\n[ {$url_ind} - {$VJrkoghoW}, {$CmZLfMuLMSEZIiTevcX}] \n");
             unset($urls_list[$VJrkoghoW]);
             $BGKIqn_HME = fGokyqo8tR33zzFafi3($VJrkoghoW);
             $X_IPKKFKnD7KIHm1wu = false;
             $elNljYZlpLLDN = '';
             $H2Ce2a0HmFxl = array();
             $cn = '';
             if (isset($foaeXizKT_CpOLBpUxK[$VJrkoghoW])) {
                 $VJrkoghoW = $foaeXizKT_CpOLBpUxK[$VJrkoghoW];
             }
             $f = $GemKMfObNXtkeAmJ && preg_match('#' . $grab_parameters['xs_exc_skip'] . '#i', $VJrkoghoW);
             if ($ICDtF9k5qRIaFX && !$f) {
                 $f = $f || preg_match('#(' . $ICDtF9k5qRIaFX . ')#', $VJrkoghoW);
             }
             if ($k2mbaYG7Adhhp0nn && !$f) {
                 foreach ($k2mbaYG7Adhhp0nn as $bm) {
                     $f = $f || preg_match('#^(' . $bm . ')#', $YWmYVMCd_Z1Jkw . $VJrkoghoW);
                 }
             }
             $f2 = false;
             if (!$f) {
                 $f2 = $chfKQ2jb8QOC && preg_match('#' . $grab_parameters['xs_inc_skip'] . '#i', $VJrkoghoW);
                 if ($PftdNZ9fEP0Z1yoaR && !$f2) {
                     $f2 = $f2 || preg_match('#(' . $PftdNZ9fEP0Z1yoaR . ')#', $VJrkoghoW);
                 }
                 if ($grab_parameters['xs_parse_only'] && !$f2 && $VJrkoghoW != '/') {
                     $f2 = $f2 || !preg_match('#' . str_replace(' ', '|', preg_quote($grab_parameters['xs_parse_only'], '#')) . '#', $VJrkoghoW);
                 }
             }
             do {
                 $CMZfyKXzIg6kFN = count($urls_list) + count($urls_list2) + count($urls_completed);
                 $f3 = $ZmiKZZ6x4mdoNJaJt[2] && $C4eNpUO4wlSz1ZekLcc * $ZmiKZZ6x4mdoNJaJt[2] + 1000 < $sWXwYhEBFg - $url_ind - $UDWzqkbDps6LuIKb;
                 if (!$f && !$f2) {
                     $YPbrrsyP5iHhPWM9NQQ = $ZmiKZZ6x4mdoNJaJt[1] && ($ctime > $ZmiKZZ6x4mdoNJaJt[0] && $pn > $hoWmvn1cTy_GjGL * $ZmiKZZ6x4mdoNJaJt[1] || $f3);
                     $UHng1R6Q0JJCH1rjl = $ZmiKZZ6x4mdoNJaJt[3] && $hoWmvn1cTy_GjGL && $CMZfyKXzIg6kFN > $hoWmvn1cTy_GjGL * $ZmiKZZ6x4mdoNJaJt[3];
                     if ($ZmiKZZ6x4mdoNJaJt[3] && $hoWmvn1cTy_GjGL && $pn > $hoWmvn1cTy_GjGL * $ZmiKZZ6x4mdoNJaJt[3]) {
                         $urls_list = $urls_list2 = array();
                         $cnu = 0;
                     }
                     if ($CjkPFJQ1MJyQxogX <= 0 || $links_level < $CjkPFJQ1MJyQxogX) {
                         $ShrtkcgbX = RT9GXtyabs__A($fjEvozDHHFDc3M3CP6e, $VJrkoghoW);
                         fTr9xtaaPTXU("<h4> { {$ShrtkcgbX} } </h4>\n");
                         $dFOsOrGrftDYFF = 0;
                         $FHkOOpdqGU9J4Ak = array_sum(explode(' ', microtime()));
                         $XIlk3ZqbSYG++;
                         do {
                             $H2Ce2a0HmFxl = $J951dqGyd9Mj->fetch($ShrtkcgbX, 0, 0);
                             $_to = $H2Ce2a0HmFxl['flags']['socket_timeout'];
                             if ($_to && $Qv8G6NWw9S0ZcPxVV['host'] != $H2Ce2a0HmFxl['purl']['host']) {
                                 $H2Ce2a0HmFxl['flags']['error'] = 'Host doesn\'t match';
                             }
                             $UIPYmw0UFeGY = intval($H2Ce2a0HmFxl['code'] == 400);
                             $fMwzFU9kjTU = intval($H2Ce2a0HmFxl['code'] == 403);
                             if (!$H2Ce2a0HmFxl['flags']['error'] && ($UIPYmw0UFeGY || $fMwzFU9kjTU || !$H2Ce2a0HmFxl['code'] || $_to)) {
                                 $dFOsOrGrftDYFF++;
                                 $sl = $grab_parameters['xs_delay_ms'] ? $grab_parameters['xs_delay_ms'] : 1;
                                 if ($_to && $grab_parameters['xs_timeout_break']) {
                                     fTr9xtaaPTXU("<p> # TIMEOUT - {$_to} #</p>\n");
                                     if ($dFOsOrGrftDYFF == 3) {
                                         if (strstr($_to, 'read')) {
                                             fTr9xtaaPTXU("<p> read200 break?</p>\n");
                                             break;
                                         }
                                         if ($x1Nsplkpc2Kdk5W++ > 5) {
                                             $nipU07LHK6q = "Too many timeouts detected";
                                             break 2;
                                         }
                                         fTr9xtaaPTXU("<p> # MULTI TIMEOUT - BREAK #</p>\n");
                                         $sl = 60;
                                         $dFOsOrGrftDYFF = 0;
                                     }
                                 }
                                 fTr9xtaaPTXU("<p> # RETRY - " . $H2Ce2a0HmFxl['code'] . " - " . intval($H2Ce2a0HmFxl['code']) . " - " . $H2Ce2a0HmFxl['flags']['error'] . "#</p>\n");
                                 sleep($_sl);
                             } else {
                                 break;
                             }
                         } while ($dFOsOrGrftDYFF < 3);
                         $JxsQWbvuZdjq9Bnq = array_sum(explode(' ', microtime())) - $FHkOOpdqGU9J4Ak;
                         $nettime += $JxsQWbvuZdjq9Bnq;
                         fTr9xtaaPTXU("<hr>\n[[[ " . $H2Ce2a0HmFxl['code'] . " ]]] - " . number_format($JxsQWbvuZdjq9Bnq, 2) . "s (" . number_format($J951dqGyd9Mj->HtFBZd5BGx4HvWf, 2) . ' + ' . number_format($J951dqGyd9Mj->nZ2n3dJmP_TiQ, 2) . ")\n" . var_export($H2Ce2a0HmFxl['headers'], 1));
                         $eX2N9ADyfLy6Jg9 = is_array($H2Ce2a0HmFxl['headers']) ? strtolower($H2Ce2a0HmFxl['headers']['content-type']) : '';
                         $JfRC0egNhxmTca = strstr($eX2N9ADyfLy6Jg9, 'text/html') || strstr($eX2N9ADyfLy6Jg9, '/xhtml') || !$eX2N9ADyfLy6Jg9;
                         if ($eX2N9ADyfLy6Jg9 && !$JfRC0egNhxmTca && (!$grab_parameters['xs_parse_swf'] || !strstr($eX2N9ADyfLy6Jg9, 'shockwave-flash'))) {
                             if (!$YPbrrsyP5iHhPWM9NQQ) {
                                 $elNljYZlpLLDN = $eX2N9ADyfLy6Jg9;
                                 continue;
                             }
                         }
                         $ZReTakA51rGrDby = array();
                         if ($H2Ce2a0HmFxl['code'] == 404) {
                             if ($links_level > 0) {
                                 if (!$grab_parameters['xs_chlog_list_max'] || count($urls_404) < $grab_parameters['xs_chlog_list_max']) {
                                     $urls_404[] = array($VJrkoghoW, $ref_links2[$VJrkoghoW]);
                                 }
                             }
                         }
                         $cn = $H2Ce2a0HmFxl['content'];
                         $tsize += strlen($cn);
                         if ($grab_parameters['xs_canonical']) {
                             if ($ShrtkcgbX == $H2Ce2a0HmFxl['last_url'] && preg_match('#<link[^>]*rel="canonical"[^>]href="([^>]*?)"#is', $cn, $C8YeeJvXHpz7ff)) {
                                 $H2Ce2a0HmFxl['last_url'] = $C8YeeJvXHpz7ff[1];
                             }
                         }
                         $VTQP1ue8oY1PvdK = preg_replace('#^.*?' . preg_quote($fjEvozDHHFDc3M3CP6e, '#') . '#', '', $H2Ce2a0HmFxl['last_url']);
                         if ($ShrtkcgbX != $H2Ce2a0HmFxl['last_url'] && $ShrtkcgbX != $H2Ce2a0HmFxl['last_url'] . '/') {
                             $foaeXizKT_CpOLBpUxK[$VJrkoghoW] = $H2Ce2a0HmFxl['last_url'];
                             $io = $VJrkoghoW;
                             if (!$urls_list_full[$VTQP1ue8oY1PvdK]) {
                                 $urls_list2[$VTQP1ue8oY1PvdK]++;
                                 if (count($ref_links[$VTQP1ue8oY1PvdK]) < max(1, intval($grab_parameters['xs_maxref']))) {
                                     $ref_links[$VTQP1ue8oY1PvdK][] = $VJrkoghoW;
                                 }
                             }
                             $elNljYZlpLLDN = 'lu';
                             if (!$YPbrrsyP5iHhPWM9NQQ) {
                                 continue;
                             }
                         }
                         if ($r2uxsHQ7o && !preg_match($r2uxsHQ7o, $H2Ce2a0HmFxl['code'])) {
                             $elNljYZlpLLDN = $H2Ce2a0HmFxl['code'];
                             continue;
                         }
                         $retrno++;
                         if ($PHpqjsuRpz25Ou = preg_replace('#<!--(\\[if IE\\]>|.*?-->)#is', '', $cn)) {
                             $cn = $PHpqjsuRpz25Ou;
                         }
                         preg_match('#<base[^>]*?href=[\'"](.*?)[\'"]#is', $cn, $bm);
                         if (isset($bm[1]) && $bm[1]) {
                             $NCzIEhBxs5f = Hl4O6cWdjqldW6($bm[1] . (preg_match('#//.*/#', $bm[1]) ? '-' : '/-'));
                         } else {
                             $NCzIEhBxs5f = Hl4O6cWdjqldW6($fjEvozDHHFDc3M3CP6e . $VJrkoghoW);
                         }
                         if ($YPbrrsyP5iHhPWM9NQQ || $UHng1R6Q0JJCH1rjl) {
                             $JfRC0egNhxmTca = false;
                         }
                         if (strstr($eX2N9ADyfLy6Jg9, 'shockwave-flash') && $grab_parameters['xs_parse_swf']) {
                             include_once yCwTqe5GDcta . 'class.pfile.inc.php';
                             $am = new SWFParser();
                             $am->h8i3gNivayoQQtqpLY($cn);
                             $fDfweZzwnbqVpWJD9 = $am->D1tXUjHdde7g1();
                         } else {
                             if ($JfRC0egNhxmTca) {
                                 $K4v1BKjLwk2MbkhbF = $grab_parameters['xs_utf8_enc'] ? 'isu' : 'is';
                                 preg_match_all('#<(?:a|area|go)\\s(?:[^>]*?\\s)?href\\s*=\\s*(?:"([^"]*)|\'([^\']*)|([^\\s\\"\\\\>]+)).*?>#is' . $K4v1BKjLwk2MbkhbF, $cn, $am);
                                 preg_match_all('#<i?frame\\s[^>]*?src\\s*=\\s*["\']?(.*?)("|>|\')#is', $cn, $Am1CLOE5I);
                                 preg_match_all('#<meta\\s[^>]*http-equiv\\s*=\\s*"?refresh[^>]*URL\\s*=\\s*["\']?(.*?)("|>|\'[>\\s])#' . $K4v1BKjLwk2MbkhbF, $cn, $yQTjPXCGcUnHW);
                                 if ($grab_parameters['xs_parse_swf']) {
                                     preg_match_all('#<object[^>]*application/x-shockwave-flash[^>]*data\\s*=\\s*["\']([^"\'>]+).*?>#' . $K4v1BKjLwk2MbkhbF, $cn, $fDfweZzwnbqVpWJD9);
                                 } else {
                                     $fDfweZzwnbqVpWJD9 = array(array(), array());
                                 }
                                 $ZReTakA51rGrDby = array();
                                 for ($i = 0; $i < count($am[1]); $i++) {
                                     if (!preg_match('#rel=["\']nofollow#i', $am[0][$i])) {
                                         $ZReTakA51rGrDby[] = $am[1][$i];
                                     }
                                 }
                                 $ZReTakA51rGrDby = @array_merge($ZReTakA51rGrDby, $am[2], $am[3], $Am1CLOE5I[1], $yQTjPXCGcUnHW[1], $fDfweZzwnbqVpWJD9[1]);
                             }
                         }
                         $ZReTakA51rGrDby = array_unique($ZReTakA51rGrDby);
                         $nn = $nt = 0;
                         reset($ZReTakA51rGrDby);
                         if (preg_match('#<meta name="robots" content="[^"]*?nofollow#is', $cn)) {
                             $ZReTakA51rGrDby = array();
                         }
                         if (!$u0pk35zQbvIj4['charset']) {
                             if (preg_match('#<meta\\s+http-equiv="content-type"[^>]*?charset=([^">]*)"#is', $cn, $jmTPqK4UHmexxwYuYDf)) {
                                 $u0pk35zQbvIj4['charset'] = $jmTPqK4UHmexxwYuYDf[1];
                             }
                         }
                         foreach ($ZReTakA51rGrDby as $i => $ll) {
                             if ($ll) {
                                 $a = $sa = trim($ll);
                                 if ($grab_parameters['xs_proto_skip'] && (preg_match('#^' . $grab_parameters['xs_proto_skip'] . '#i', $a) || $GemKMfObNXtkeAmJ && preg_match('#' . $grab_parameters['xs_exc_skip'] . '#i', $a) || preg_match('#^' . $grab_parameters['xs_proto_skip'] . '#i', function_exists('html_entity_decode') ? html_entity_decode($a) : $a))) {
                                     continue;
                                 }
                                 if (strlen($a) > 2048) {
                                     continue;
                                 }
                                 $O2Mt183Pc1Aha = $this->F8eE_Rqcrb($a, $VJrkoghoW, $hCqPL8RwlB, $NCzIEhBxs5f, $fjEvozDHHFDc3M3CP6e);
                                 if ($O2Mt183Pc1Aha == 1) {
                                     if ($grab_parameters['xs_extlinks'] && (!$grab_parameters['xs_extlinks_excl'] || !preg_match('#' . $this->eufpjMrwNSVr($grab_parameters['xs_extlinks_excl']) . '#', $a)) && (!$grab_parameters['xs_ext_max'] || count($urls_ext) < $grab_parameters['xs_ext_max'])) {
                                         if (!$urls_ext[$a] && (!$grab_parameters['xs_ext_skip'] || !preg_match('#' . $grab_parameters['xs_ext_skip'] . '#', $a))) {
                                             $urls_ext[$a] = $ShrtkcgbX;
                                         }
                                     }
                                     continue;
                                 }
                                 $VTQP1ue8oY1PvdK = $O2Mt183Pc1Aha ? $a : substr($a, strlen($fjEvozDHHFDc3M3CP6e));
                                 $VTQP1ue8oY1PvdK = str_replace(' ', '%20', $VTQP1ue8oY1PvdK);
                                 if ($grab_parameters['xs_cleanurls']) {
                                     $VTQP1ue8oY1PvdK = @preg_replace($grab_parameters['xs_cleanurls'], '', $VTQP1ue8oY1PvdK);
                                 }
                                 if ($grab_parameters['xs_cleanpar']) {
                                     do {
                                         $Kl6oIfEwKD_U = $VTQP1ue8oY1PvdK;
                                         $VTQP1ue8oY1PvdK = @preg_replace('#[\\?\\&](' . $grab_parameters['xs_cleanpar'] . ')=[a-z0-9\\-\\.\\_\\=\\/]+$#i', '', $VTQP1ue8oY1PvdK);
                                         $VTQP1ue8oY1PvdK = @preg_replace('#([\\?\\&])(' . $grab_parameters['xs_cleanpar'] . ')=[a-z0-9\\-\\.\\_\\=\\/]+&#i', '$1', $VTQP1ue8oY1PvdK);
                                     } while ($VTQP1ue8oY1PvdK != $Kl6oIfEwKD_U);
                                 }
                                 if ($urls_list_full[$VTQP1ue8oY1PvdK] || $VTQP1ue8oY1PvdK == $VJrkoghoW) {
                                     continue;
                                 }
                                 if ($grab_parameters['xs_exclude_check']) {
                                     $_f = $_f2 = false;
                                     $_f = $ICDtF9k5qRIaFX && preg_match('#(' . $ICDtF9k5qRIaFX . ')#', $VTQP1ue8oY1PvdK);
                                     if ($k2mbaYG7Adhhp0nn && !$_f) {
                                         foreach ($k2mbaYG7Adhhp0nn as $bm) {
                                             $_f = $_f || preg_match('#^(' . $bm . ')#', $YWmYVMCd_Z1Jkw . $VTQP1ue8oY1PvdK);
                                         }
                                     }
                                     if ($_f) {
                                         continue;
                                     }
                                 }
                                 fTr9xtaaPTXU("<u>[{$VTQP1ue8oY1PvdK}]</u><br>\n", 3);
                                 //exit;
                                 $urls_list2[$VTQP1ue8oY1PvdK]++;
                                 if ($grab_parameters['xs_maxref'] && count($ref_links[$VTQP1ue8oY1PvdK]) < $grab_parameters['xs_maxref']) {
                                     $ref_links[$VTQP1ue8oY1PvdK][] = $VJrkoghoW;
                                 }
                                 $nt++;
                             }
                         }
                         unset($ZReTakA51rGrDby);
                     }
                 }
                 if ($grab_parameters['xs_incl_only'] && !$f) {
                     $f = $f || !preg_match('#' . str_replace(' ', '|', preg_quote($grab_parameters['xs_incl_only'], '#')) . '#', $fjEvozDHHFDc3M3CP6e . $VJrkoghoW);
                 }
                 if (!$f) {
                     $f = $f || preg_match('#<meta name="robots" content="[^"]*?noindex#is', $cn);
                     if ($f) {
                         $elNljYZlpLLDN = 'mrob';
                     }
                 }
                 if (!$f) {
                     $PoGqwMsoB = array('link' => preg_replace('#//+$#', '/', preg_replace('#^([^/\\:\\?]/)/+#', '\\1', $fjEvozDHHFDc3M3CP6e . $VJrkoghoW)));
                     if ($grab_parameters['xs_makehtml'] || $grab_parameters['xs_makeror'] || $grab_parameters['xs_rssinfo']) {
                         preg_match('#<title>([^<]*?)</title>#is', $H2Ce2a0HmFxl['content'], $pUrCgVuyLqY6_hjcC0);
                         $PoGqwMsoB['t'] = strip_tags($pUrCgVuyLqY6_hjcC0[1]);
                     }
                     if ($grab_parameters['xs_metadesc']) {
                         preg_match('#<meta\\s[^>]*(?:http-equiv|name)\\s*=\\s*"?description[^>]*content\\s*=\\s*["]?([^>\\"]*)#is', $cn, $PQ88kZzO1uRFvk);
                         if ($PQ88kZzO1uRFvk[1]) {
                             $PoGqwMsoB['d'] = $PQ88kZzO1uRFvk[1];
                         }
                     }
                     if ($grab_parameters['xs_makeror'] || $grab_parameters['xs_autopriority']) {
                         $PoGqwMsoB['o'] = max(0, $links_level);
                     }
                     if ($uq8LJ8X9g0o) {
                         $PoGqwMsoB['p'] = $uq8LJ8X9g0o;
                     }
                     if (preg_match('#(' . $bEoirRlORmPAWbBHF . ')#', $fjEvozDHHFDc3M3CP6e . $VJrkoghoW, $kCPGNzrIjuQgkoxBRP)) {
                         $PoGqwMsoB['clm'] = $ZxN8MjZW3uwPfqCTY[$kCPGNzrIjuQgkoxBRP[1]]['lm'];
                         $PoGqwMsoB['f'] = $ZxN8MjZW3uwPfqCTY[$kCPGNzrIjuQgkoxBRP[1]]['f'];
                         $PoGqwMsoB['p'] = $ZxN8MjZW3uwPfqCTY[$kCPGNzrIjuQgkoxBRP[1]]['p'];
                     }
                     if ($grab_parameters['xs_lastmod_notparsed'] && $f2) {
                         $H2Ce2a0HmFxl = $J951dqGyd9Mj->fetch($ShrtkcgbX, 0, 1, false, "", array('req' => 'HEAD'));
                     }
                     if (!$PoGqwMsoB['lm'] && isset($H2Ce2a0HmFxl['headers']['last-modified'])) {
                         $PoGqwMsoB['lm'] = $H2Ce2a0HmFxl['headers']['last-modified'];
                     }
                     fTr9xtaaPTXU("\n((include " . $PoGqwMsoB['link'] . "))<br />\n");
                     $X_IPKKFKnD7KIHm1wu = true;
                     if ($grab_parameters['xs_memsave']) {
                         FRy4YMXr_PT($BGKIqn_HME, $PoGqwMsoB);
                         $urls_completed[] = $BGKIqn_HME;
                     } else {
                         $urls_completed[] = serialize($PoGqwMsoB);
                     }
                     $C4eNpUO4wlSz1ZekLcc = $hoWmvn1cTy_GjGL - count($urls_completed);
                 }
             } while (false);
             // zerowhile
             if ($url_ind >= $cnu) {
                 unset($urls_list);
                 $url_ind = 0;
                 $urls_list = $urls_list2;
                 $urls_list_full = array_merge($urls_list_full, $urls_list);
                 $cnu = count($urls_list);
                 unset($ref_links2);
                 $ref_links2 = $ref_links;
                 unset($ref_links);
                 unset($urls_list2);
                 $ref_links = array();
                 $urls_list2 = array();
                 $links_level++;
                 fTr9xtaaPTXU("\n<br>NEXT LEVEL:{$links_level}<br />\n");
             }
             if (!$X_IPKKFKnD7KIHm1wu) {
                 fTr9xtaaPTXU("\n({skipped " . $VJrkoghoW . "})<br />\n");
                 if (!$grab_parameters['xs_chlog_list_max'] || count($urls_list_skipped) < $grab_parameters['xs_chlog_list_max']) {
                     $urls_list_skipped[$VJrkoghoW] = $elNljYZlpLLDN;
                 }
             }
             $pn++;
             $LG9QHtb6yK6qR5InZ = explode(" ", microtime());
             $ctime = $LG9QHtb6yK6qR5InZ[0] + $LG9QHtb6yK6qR5InZ[1] - $Xm5TKOzcDly01EH2;
             W5mf7Y9Huk0KaQU6();
             $pl = min($cnu - $url_ind, $C4eNpUO4wlSz1ZekLcc);
             if ($cnu == $url_ind || $pl == 0 || $pn == 1 || $pn % $grab_parameters['xs_progupdate'] == 0 || $ctime - $urKftSsitV6UKM > 5 || count($urls_completed) >= $hoWmvn1cTy_GjGL) {
                 $urKftSsitV6UKM = $tKVE8xlfmzSWy;
                 if (strstr($LwRunzk9c_gIARHp['content'], 'header')) {
                     break;
                 }
                 global $m8;
                 $mu = function_exists('memory_get_usage') ? memory_get_usage() : '-';
                 $Zwf4bxMTE8xK8E = max($Zwf4bxMTE8xK8E, $mu);
                 if ($mu > $m8 + 1000000) {
                     $m8 = $mu;
                     $cc = ' style="color:red"';
                 } else {
                     $cc = '';
                 }
                 if (intval($mu)) {
                     $mu = number_format($mu / 1024, 1) . ' Kb';
                 }
                 fTr9xtaaPTXU("\n(<span" . $cc . ">memory" . ($cc ? ' up' : '') . ": {$mu}</span>)<br>\n");
                 $JidfgefUv4J = count($urls_completed) >= $hoWmvn1cTy_GjGL || $url_ind >= $cnu;
                 $progpar = array($ctime, str_replace($q5ANtD3FURVI, '', $VJrkoghoW), $pl, $pn, $tsize, $links_level, $mu, count($urls_completed), count($urls_list2), $nettime, $JxsQWbvuZdjq9Bnq);
                 if ($MY9uRPqbKXzuC['bgexec']) {
                     if (time() - $rgUMQZOC8 > 5) {
                         $rgUMQZOC8 = time();
                         m0HngeVPuiULaXDb(w7NW0sRCh2KBF74Bo, wJu5NxAjkFkQBpMse($progpar));
                     }
                 }
                 if ($nU8Mj5ZUWIEjvw && !$f) {
                     $nU8Mj5ZUWIEjvw($progpar);
                 }
             } else {
                 $nU8Mj5ZUWIEjvw(array('cmd' => 'ping', 'bg' => $MY9uRPqbKXzuC['bgexec']));
             }
             if (!$nipU07LHK6q) {
                 if ($nipU07LHK6q = file_exists($e1WQ3uEw36W8 = fSB9ZrUIK4aICK6XAM . hE3J3lTm1xrJcz5CHD)) {
                     if (!@xnDpYg7WwA0($e1WQ3uEw36W8)) {
                         $nipU07LHK6q = 0;
                     }
                 }
             }
             if ($grab_parameters['xs_exec_time'] && time() - $euVHgD2C1lt > $grab_parameters['xs_exec_time']) {
                 $nipU07LHK6q = 'Time limit exceeded - ' . $grab_parameters['xs_exec_time'] . ' - ' . (time() - $euVHgD2C1lt);
             }
             if ($grab_parameters['xs_savestate_time'] > 0 && ($ctime - $dr1lN9apl > $grab_parameters['xs_savestate_time'] || $JidfgefUv4J || $nipU07LHK6q)) {
                 $dr1lN9apl = $ctime;
                 fTr9xtaaPTXU("(saving dump)<br />\n");
                 $AfrvOmU2Ccm9JZj = compact('url_ind', 'urls_list', 'urls_list2', 'cnu', 'ref_links', 'ref_links2', 'urls_list_full', 'urls_completed', 'urls_404', 'nt', 'tsize', 'pn', 'links_level', 'ctime', 'urls_ext', 'starttime', 'retrno', 'nettime', 'urls_list_skipped', 'imlist', 'progpar', 'runstate');
                 $AfrvOmU2Ccm9JZj['time'] = time();
                 $it9ClCc0l = wJu5NxAjkFkQBpMse($AfrvOmU2Ccm9JZj);
                 m0HngeVPuiULaXDb(t_LlD5p6PQKvgvIZpP9, $it9ClCc0l);
                 unset($AfrvOmU2Ccm9JZj);
                 unset($it9ClCc0l);
             }
             if ($grab_parameters['xs_delay_req'] && $grab_parameters['xs_delay_ms'] && $XIlk3ZqbSYG % $grab_parameters['xs_delay_req'] == 0) {
                 sleep($grab_parameters['xs_delay_ms']);
             }
         } while (!$JidfgefUv4J && !$nipU07LHK6q);
     }
     fTr9xtaaPTXU("\n\n<br><br>Crawling completed<br>\n");
     if ($_GET['ddbgexit']) {
         exit;
     }
     return array('u404' => $urls_404, 'starttime' => $starttime, 'topmu' => $Zwf4bxMTE8xK8E, 'ctime' => $ctime, 'tsize' => $tsize, 'retrno' => $retrno, 'nettime' => $nettime, 'errmsg' => '', 'initurl' => $q5ANtD3FURVI, 'initdir' => $fjEvozDHHFDc3M3CP6e, 'ucount' => count($urls_completed), 'crcount' => $pn, 'time' => time(), 'params' => $MY9uRPqbKXzuC, 'interrupt' => $nipU07LHK6q, 'runstate' => $u0pk35zQbvIj4, 'urls_ext' => $urls_ext, 'urls_list_skipped' => $urls_list_skipped, 'max_reached' => count($urls_completed) >= $hoWmvn1cTy_GjGL);
 }
コード例 #3
0
 function aHYbmExGS2Xg9WZI($urls_completed, &$tJrSkNDeGtrN7kX)
 {
     global $YqmHm1EmL4XW25O, $ECiIdFEhSN3p79, $yeAH4YM6vHfvHevRd, $sm_proc_list, $AbGonU3oVS, $JSpvYNq0nu, $Zul57HOZFkqdgOyF8;
     $kuEVOM4cxiF = $this->MY9uRPqbKXzuC['xs_chlog'];
     $y0KUa3qAiR7HE7wFa = vHwDy8urTbxymoY7y(a0mMmHqPDZ, 'sitemap_xml_tpl.xml');
     $FUhWpV9WXzqkK8C = file_get_contents(a0mMmHqPDZ . $y0KUa3qAiR7HE7wFa);
     preg_match('#^(.*)%URLS_LIST_FROM%(.*)%URLS_LIST_TO%(.*)$#is', $FUhWpV9WXzqkK8C, $YqmHm1EmL4XW25O);
     $YqmHm1EmL4XW25O[1] = str_replace('www.xml-sitemaps.com', 'www.xml-sitemaps.com (' . J_IeOwjAksjM . ')', $YqmHm1EmL4XW25O[1]);
     $YqmHm1EmL4XW25O[1] = str_replace('%GEN_URL%', $this->MY9uRPqbKXzuC['gendom'], $YqmHm1EmL4XW25O[1]);
     $G9ScpFWiExG = preg_replace('#[^\\/]+?\\.xml$#', '', $this->MY9uRPqbKXzuC['xs_smurl']);
     $YqmHm1EmL4XW25O[1] = str_replace('%SM_BASE%', $G9ScpFWiExG, $YqmHm1EmL4XW25O[1]);
     if ($this->MY9uRPqbKXzuC['xs_disable_xsl']) {
         $YqmHm1EmL4XW25O[1] = preg_replace('#<\\?xml-stylesheet.*\\?>#', '', $YqmHm1EmL4XW25O[1]);
     }
     if ($this->MY9uRPqbKXzuC['xs_nobrand']) {
         $YqmHm1EmL4XW25O[1] = str_replace('sitemap.xsl', 'sitemap_nb.xsl', $YqmHm1EmL4XW25O[1]);
         $YqmHm1EmL4XW25O[1] = preg_replace('#<!-- created.*?>#', '', $YqmHm1EmL4XW25O[1]);
     }
     $LZH9hXj8Pt0LkveSZgk = implode('', file(a0mMmHqPDZ . 'sitemap_ror_tpl.xml'));
     preg_match('#^(.*)%URLS_LIST_FROM%(.*)%URLS_LIST_TO%(.*)$#is', $LZH9hXj8Pt0LkveSZgk, $ECiIdFEhSN3p79);
     $bEP0apSEQLDaV9Xds = implode('', file(a0mMmHqPDZ . 'sitemap_rss_tpl.xml'));
     preg_match('#^(.*)%URLS_LIST_FROM%(.*)%URLS_LIST_TO%(.*)$#is', $bEP0apSEQLDaV9Xds, $K2dHWcwY5bEP);
     $bgOU73TJ7jwvdKa5Vq = implode('', file(a0mMmHqPDZ . 'sitemap_base_tpl.xml'));
     preg_match('#^(.*)%URLS_LIST_FROM%(.*)%URLS_LIST_TO%(.*)$#is', $bgOU73TJ7jwvdKa5Vq, $yeAH4YM6vHfvHevRd);
     $this->QVcuW67y39PsmXB = $this->MY9uRPqbKXzuC['xs_sm_size'] ? $this->MY9uRPqbKXzuC['xs_sm_size'] : 50000;
     $this->sm_filesplit = $this->MY9uRPqbKXzuC['xs_sm_filesize'] ? $this->MY9uRPqbKXzuC['xs_sm_filesize'] : 10;
     $this->sm_filesplit = max(intval($this->sm_filesplit * 1024 * 1024), 2000) - 1000;
     if (!$this->MY9uRPqbKXzuC['xs_imginfo']) {
         unset($this->G0Qn3BFpb4[1]);
     }
     if (!$this->MY9uRPqbKXzuC['xs_videoinfo']) {
         unset($this->G0Qn3BFpb4[2]);
     }
     if (!$this->MY9uRPqbKXzuC['xs_newsinfo']) {
         unset($this->G0Qn3BFpb4[3]);
     }
     if (!$this->MY9uRPqbKXzuC['xs_makemob']) {
         unset($this->G0Qn3BFpb4[4]);
     }
     if (!$this->MY9uRPqbKXzuC['xs_rssinfo']) {
         unset($this->G0Qn3BFpb4[5]);
     }
     $ctime = date('Y-m-d H:i:s');
     $NEd4p7VjgbWpEWv8 = 0;
     global $SOqUCKihi5dt8i;
     $tt = array('<', '>');
     foreach ($tt as $oavbxuq1ZeJr) {
         $SOqUCKihi5dt8i[$oavbxuq1ZeJr] = '&#' . ord($oavbxuq1ZeJr) . ';';
     }
     for ($i = 0; $i < 31; $i++) {
         $SOqUCKihi5dt8i[chr($i)] = '';
     }
     $SOqUCKihi5dt8i[chr(0)] = $SOqUCKihi5dt8i[chr(10)] = $SOqUCKihi5dt8i[chr(13)] = '';
     $SOqUCKihi5dt8i[' '] = '%20';
     $pf = 0;
     $DQV8zvL0_sgzk3Qru = intval($AbGonU3oVS['istart']);
     $this->XNUfCNwhY4T($AbGonU3oVS);
     if ($this->MY9uRPqbKXzuC['xs_maketxt']) {
         $uimXdkmdPAzeMTg1 = $this->x0KsMnatxIC9['fopen'](IFy8IvAAwMb4K . $this->QxoEWBD1O1qswq3ii, $DQV8zvL0_sgzk3Qru ? 'a' : 'w');
         if (!$uimXdkmdPAzeMTg1) {
             $Zul57HOZFkqdgOyF8[] = IFy8IvAAwMb4K . $this->QxoEWBD1O1qswq3ii;
         }
     }
     if ($this->MY9uRPqbKXzuC['xs_makeror']) {
         $R8zvvOHJCjp = cVhR96lmkjBRF(av2KTAsuDctU, $DQV8zvL0_sgzk3Qru ? 'a' : 'w');
         $rc = str_replace('%INIT_URL%', $this->MY9uRPqbKXzuC['xs_initurl'], $ECiIdFEhSN3p79[1]);
         if ($R8zvvOHJCjp) {
             fwrite($R8zvvOHJCjp, $rc);
         } else {
             $Zul57HOZFkqdgOyF8[] = av2KTAsuDctU;
         }
     }
     if ($this->MY9uRPqbKXzuC['xs_rssinfo']) {
         $KEVxZqt6IYRerQfQ = $this->uurl_p . basename(yyq7fDoK_cBPACC6n1);
         $PSyERNx_fX3yH75 = yyq7fDoK_cBPACC6n1;
         $Y31Y74dyLIO = cVhR96lmkjBRF($PSyERNx_fX3yH75, $DQV8zvL0_sgzk3Qru ? 'a' : 'w');
         $rc = str_replace('%INIT_URL%', $this->MY9uRPqbKXzuC['xs_initurl'], $K2dHWcwY5bEP[1]);
         $rc = str_replace('%FEED_TITLE%', $this->MY9uRPqbKXzuC['xs_rsstitle'], $rc);
         $rc = str_replace('%BUILD_DATE%', gmdate('D, d M Y H:i:s +0000'), $rc);
         $rc = str_replace('%SELF_URL%', $KEVxZqt6IYRerQfQ, $rc);
         if ($Y31Y74dyLIO) {
             fwrite($Y31Y74dyLIO, $rc);
         } else {
             $Zul57HOZFkqdgOyF8[] = $PSyERNx_fX3yH75;
         }
     }
     if ($sm_proc_list) {
         foreach ($sm_proc_list as $k => $eTOHJxXXzq_3x0t) {
             $sm_proc_list[$k]->PYyS9SPDWu0Pb3bvG8($this->MY9uRPqbKXzuC, $this->x0KsMnatxIC9, $this->Toy1DGI3eNLNBNIr);
         }
     }
     if ($this->MY9uRPqbKXzuC['xs_write_delay']) {
         list($BkTM7Bu3D4VxM, $YqzeZz0yo5fdT) = explode('|', $this->MY9uRPqbKXzuC['xs_write_delay']);
     }
     for ($i = $xn = $DQV8zvL0_sgzk3Qru; $i < count($urls_completed); $i++, $xn++) {
         if ($i % 100 == 0) {
             W5mf7Y9Huk0KaQU6();
             fTr9xtaaPTXU(" / {$i} / " . (time() - $_tm));
             $_tm = time();
         }
         zDZfnOkYHwV(array('cmd' => 'info', 'id' => 'percprog', 'text' => number_format($i * 100 / count($urls_completed), 0) . '%'));
         $x3y6JFDVKhBEE3np = $this->mVTd3cRsYoUPyznbMc();
         if ($x3y6JFDVKhBEE3np && $i != $DQV8zvL0_sgzk3Qru) {
             m0HngeVPuiULaXDb($JSpvYNq0nu, wJu5NxAjkFkQBpMse(array('istart' => $i, 'rinfo' => $this->JHGRPqNtoGHGfef4Ke)));
         }
         if ($this->MY9uRPqbKXzuC['xs_memsave']) {
             $cu = xn22ZOg5Ng($urls_completed[$i]);
         } else {
             $cu = $urls_completed[$i];
         }
         if (!is_array($cu)) {
             $cu = @unserialize($cu);
         }
         $l = $this->Ufz4hdNjXhLx60oBsLt($cu['link']);
         $cu['link'] = $l;
         $t = $this->aRjeSjk24($cu['t'], true);
         $d = $this->aRjeSjk24($cu['d'] ? $cu['d'] : $cu['t'], true);
         $BiONb5bgRD = '';
         if ($cu['clm']) {
             $BiONb5bgRD = $cu['clm'];
         } else {
             switch ($this->MY9uRPqbKXzuC['xs_lastmod']) {
                 case 1:
                     $BiONb5bgRD = $cu['lm'] ? $cu['lm'] : $ctime;
                     break;
                 case 2:
                     $BiONb5bgRD = $ctime;
                     break;
                 case 3:
                     $BiONb5bgRD = $this->MY9uRPqbKXzuC['xs_lastmodtime'];
                     break;
             }
         }
         $WnpHNxdaTuMquF7 = $PfbhgdTernTpzDj = false;
         if ($cu['p']) {
             $p = $cu['p'];
         } else {
             $p = $this->MY9uRPqbKXzuC['xs_priority'];
             if ($this->MY9uRPqbKXzuC['xs_autopriority']) {
                 $p = $p * pow($this->MY9uRPqbKXzuC['xs_descpriority'] ? $this->MY9uRPqbKXzuC['xs_descpriority'] : 0.8, $cu['o']);
                 if ($this->Uj5zMY11qaEzIE) {
                     $WnpHNxdaTuMquF7 = true;
                     $PfbhgdTernTpzDj = $this->Uj5zMY11qaEzIE && !isset($this->Uj5zMY11qaEzIE[$cu['link']]) || $this->o8Jjo6v5ay1[$cu['link']];
                     if ($PfbhgdTernTpzDj) {
                         $p = 0.95;
                     }
                 }
                 $p = max(0.0001, min($p, 1.0));
                 $p = @number_format($p, 4);
             }
         }
         if ($BiONb5bgRD) {
             $BiONb5bgRD = strtotime($BiONb5bgRD);
             $BiONb5bgRD = gmdate('Y-m-d\\TH:i:s+00:00', $BiONb5bgRD);
         }
         $f = $cu['f'] ? $cu['f'] : $this->MY9uRPqbKXzuC['xs_freq'];
         $gY_IcYa9NNIDgh7X_1 = array('URL' => $l, 'TITLE' => $t, 'DESC' => $d, 'PERIOD' => $f, 'LASTMOD' => $BiONb5bgRD, 'ORDER' => $cu['o'], 'PRIORITY' => $p);
         if ($this->MY9uRPqbKXzuC['xs_makemob']) {
             if (!$this->MY9uRPqbKXzuC['xs_mobileincmask'] || preg_match('#' . str_replace(' ', '|', preg_quote($this->MY9uRPqbKXzuC['xs_mobileincmask'], '#')) . '#', $gY_IcYa9NNIDgh7X_1['URL'])) {
                 $this->fslY6ssCNGE(array_merge($gY_IcYa9NNIDgh7X_1, array('ismob' => true)), $YqmHm1EmL4XW25O[2], 4);
             }
         }
         $this->fslY6ssCNGE($gY_IcYa9NNIDgh7X_1, $YqmHm1EmL4XW25O[2], 0);
         if ($this->MY9uRPqbKXzuC['xs_maketxt'] && $uimXdkmdPAzeMTg1) {
             $this->x0KsMnatxIC9['fwrite']($uimXdkmdPAzeMTg1, $cu['link'] . "\n");
         }
         if ($sm_proc_list) {
             foreach ($sm_proc_list as $eTOHJxXXzq_3x0t) {
                 $eTOHJxXXzq_3x0t->wBZSjAu6USLv869OfXK($gY_IcYa9NNIDgh7X_1);
             }
         }
         if ($this->MY9uRPqbKXzuC['xs_makeror'] && $R8zvvOHJCjp) {
             if ($this->MY9uRPqbKXzuC['xs_ror_unique']) {
                 $t = $gY_IcYa9NNIDgh7X_1['TITLE'];
                 $d = $gY_IcYa9NNIDgh7X_1['DESC'];
                 while ($PoGqwMsoB = $ai[md5('t' . $t)]++) {
                     $t = $gY_IcYa9NNIDgh7X_1['TITLE'] . ' ' . $PoGqwMsoB;
                 }
                 while ($PoGqwMsoB = $ai[md5('d' . $d)]++) {
                     $d = $gY_IcYa9NNIDgh7X_1['DESC'] . ' ' . $PoGqwMsoB;
                 }
                 $gY_IcYa9NNIDgh7X_1['TITLE'] = $t;
                 $gY_IcYa9NNIDgh7X_1['DESC'] = $d;
             }
             fwrite($R8zvvOHJCjp, $this->Toy1DGI3eNLNBNIr->UhW8Rxuh0rGTpQQ($ECiIdFEhSN3p79[2], $gY_IcYa9NNIDgh7X_1));
         }
         if ($kuEVOM4cxiF) {
             if (!isset($this->Uj5zMY11qaEzIE[$cu['link']]) && count($this->Ay_0ZLenTLW) < $this->PaHAdHXyU_QJd4) {
                 $this->Ay_0ZLenTLW[$cu['link']]++;
             }
         }
         unset($this->Uj5zMY11qaEzIE[$cu['link']]);
     }
     $this->zdUTg22HNObKCXmp();
     if ($this->MY9uRPqbKXzuC['xs_maketxt']) {
         $this->x0KsMnatxIC9['fclose']($uimXdkmdPAzeMTg1);
         @chmod(IFy8IvAAwMb4K . $this->QxoEWBD1O1qswq3ii, 0666);
     }
     if ($this->MY9uRPqbKXzuC['xs_makeror']) {
         if ($R8zvvOHJCjp) {
             fwrite($R8zvvOHJCjp, $ECiIdFEhSN3p79[3]);
         }
         fclose($R8zvvOHJCjp);
     }
     if ($this->MY9uRPqbKXzuC['xs_rssinfo']) {
         if ($Y31Y74dyLIO) {
             fwrite($Y31Y74dyLIO, $K2dHWcwY5bEP[3]);
         }
         fclose($Y31Y74dyLIO);
         $this->uNFFhEr_Ldjz6gLuOb($this->MY9uRPqbKXzuC['xs_rssfilename']);
     }
     if ($sm_proc_list) {
         foreach ($sm_proc_list as $eTOHJxXXzq_3x0t) {
             $eTOHJxXXzq_3x0t->SWPRyjxwK34hBwC();
         }
     }
     m0HngeVPuiULaXDb($JSpvYNq0nu, wJu5NxAjkFkQBpMse(array('done' => true)));
     zDZfnOkYHwV(array('cmd' => 'info', 'id' => 'percprog', ''));
 }