Мож кому надо

Discussion in 'PHP' started by DTW, 9 Jul 2009.

  1. DTW

    DTW Banned

    Joined:
    11 May 2008
    Messages:
    221
    Likes Received:
    52
    Reputations:
    11
    Декодер от doska.ru и ss.lv Чтоб телефон парсить

    Code:
    print_phone( 'JUFDJTk5JUFBUiU5RCU5RCVBOSU5MXklOTAlOTZ1JUFFJUFCJUM0JTk1JThFJUI1JTg2JTg2JTkzJTkzJUE5dSU5RiVBMyU4NyU5NyVBOCVDMiVCOCU4NyVCMnIlQTklOEQlOEMlRDglODUlODAlN0IlQTAlQzclQzMlQUElREMlODUlQ0RwJUE3JUI0JUFBJUIxdCU5NSU5NiU4MyVDRSVBNCVDNSVCMSU4OSVBRSU4QiVBMiU4RSU4NyVDQiU3RSU5MHQlQTYlQUUlQUMlQTclQTUlQTglQTR0JTg3JTlBJUE3JUI1cSU4RWtvJUEx', 1 );
    
    
    
    PHP:

     
    function ph_dec($data$key,  $mode ){
        
    // unescape
     
    $v base64_decode($data);
     
    $data =   urldecode($v);
     
    $L strlen($key);
     
    $x strlen($data);
     
    $dec '';
     
    $a;
     
    $b
     
     for(
    $i 0$i $x$i++ ){
     
    $a substr($data,$i$i+);
     
    $b substr($key,  $i%$L$i%$L +);
     
     if(
    $mode == 1$a ord($a) - ord($b);
     else if(
    $mode == 2$aord($a) - ord($b) + 14;
     else  
    $a ord($a)^ord($b);
            
     
    $dec .= chr($a);
        }
        return 
    $dec;
    }

     

       function 
    js_dec2($ph ){
        return 
    ph_dec(ph_dec($ph,'mB7Q=j.Fpsg0mds',1), 'H-Feps)XbWl,ToY');
    }


      
    function  
    js_decode($ph) {

      return 
    js_dec2(ph_dec($ph,'pRo-aWLm=J8@reg',2));  
    }

    echo 
    $a =js_decode('JUFDJTk5JUFBUiU5RCU5RCVBOSU5MXklOTAlOTZ1JUFFJUFCJUM0JTk1JThFJUI1JTg2JTg2JTkzJTkzJUE5dSU5RiVBMyU4NyU5NyVBOCVDMiVCOCU4NyVCMnIlQTklOEQlOEMlRDglODUlODAlN0IlQTAlQzclQzMlQUElREMlODUlQ0RwJUE3JUI0JUFBJUIxdCU5NSU5NiU4MyVDRSVBNCVDNSVCMSU4OSVBRSU4QiVBMiU4RSU4NyVDQiU3RSU5MHQlQTYlQUUlQUMlQTclQTUlQTglQTR0JTg3JTlBJUE3JUI1cSU4RWtvJUEx');

    переписана с яваскрипта
     
  2. DTW

    DTW Banned

    Joined:
    11 May 2008
    Messages:
    221
    Likes Received:
    52
    Reputations:
    11
    Часть 2

    Идет выборка тел номеров за сегодня..

    PHP:
    /* Telephone number parser                                                  
     * Beta version from easy user                                           
     * Curl(lib) must be!  
     * in php.ini extension=php_curl.dll !!!
     * Work in ss.lv            
    **/
    include("decoder.php");   


      function 
    connection()
    {
    $server='localhost';
    $user='';
    $password='';
    $database='telbot';

    $connect mysql_connect($server,$user,$password) ;
     if(!
    $connect)
     {
      echo 
    mysql_error($connect);
     }
     if(!
    mysql_select_db($database,$connect))
     {
        echo 
    mysql_error($connect);  
     }
       return 
    $connect;
       
     }
       
    // проверка номера   
    function cheaknumber($num)
    {   

      
    connection(); 
      
    $q ="select * from number  where  num='".$num."' ";
     
    $rezult =  mysql_query($q);
       if(!
    $rezult) echo mysql_error();
     if(
    mysql_num_rows($rezult) > 0)  {
     return 
    false;
     
     }
     else {
        return 
    true;
     } 
    }
    // втавка номера 
    function insert($num)
    {
        
    connection();
    $q="insert into  number(num,date) values('$num',NOW())";
    $rezult mysql_query($q);
        if(!
    $rezult) echo mysql_error(); 
        
    }
     
    // проверкка ссылки
    function cheaklink($link)
    {
     
    connection();    
     
    $q ="select * from link  where  links='".$link."' ";
     
    $rezutl =  mysql_query($q);
     if(
    mysql_num_rows($rezutl) > 0)
     return 
    false;
     else {
         
     return 
    true;
     
     }  
    }    
     
    // вставка линка
     
    function  links($id)
     {
         
    connection();
         
         
    $q="insert into link(links) values('$id')";
       
    $rezult mysql_query($q);
         if(!
    $rezult) echo mysql_error();
       
        
    }  
      function 
    Sellink($url)
      {
       
    connection();   
       
    $q="SELECT * from link";    
       
    $rezult mysql_query($q);
       if(!
    $rezult) echo mysql_error();
      
    //f(mysql_num_rows($rezult)>0)
       
    {
       while(
    $rowsmysql_fetch_array($rezult))
            
    Finnumber($url,$rows['links']);
       } 
       
      }
      

      function 
    Findurl($http,$path,$lv=0)
     {

      
    $curl curl_init($http.$path);
     
    // Параметры соединения
     
    curl_setopt($curlCURLOPT_RETURNTRANSFER,1);
     
    curl_setopt($curlCURLOPT_USERAGENT'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.4) Gecko/20060516 SeaMonkey/1.0.2'); 
     
    // Получаем соедржимое страницы
     
    $id2 curl_exec($curl);
     
    curl_close($curl);
     
    //ищем ссылки на обьявления
     
    $pat2 '#href=\"(/msg/lv/work/are-required/.*\.html)\"#im';  
     
    $total preg_match_all($pat2,$id2,$poc2) ;
     
     
    //print_r($poc2[1]);
     
     
      
    for($i=0$i $total-1;  $i++) {
      
      if(
    cheaklink($poc2[1][$i])) {
         
    links($poc2[1][$i]);
      }
       
     }
             
        
    $pats3='#href=\"(/lv/work/are-required/today/page\d\.html)\"#im';       
      
    $tot preg_match_all($pats3$id2,$pock); 
           
    // print_r($pock);
           
    if($lv $tot) {
         for(
    $i=0$i $tot;  $i++)
         {
            
    Findurl('http://www.ss.lv',$pock[1][$i],$lv+1);
         }      
           }
    }
     
     function 
    Finnumber($http,$path)
     {

     
    $curl curl_init($http.$path);
    // Параметры соединения
     
    curl_setopt($curlCURLOPT_RETURNTRANSFER,1);
     
    curl_setopt($curlCURLOPT_USERAGENT'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.4) Gecko/20060516 SeaMonkey/1.0.2'); 
    // Получаем соедржимое страницы
    $id3 curl_exec($curl);
    curl_close($curl);
    // ищем закодированую строку
    $pat '#print_phone[(](.*)[)]#im';  
    preg_match_all($pat,$id3,$poc2) ;

    //print_r($poc2);

     
    $njs_decode($poc2[1][0]);
     
    // sample n='2056-34-56';
      
    list($d1,$d2,$d3)=explode('-',$n);
    echo 
    $nomer =$d1.$d2.$d3;
    echo 
    "\r\n";
     if(
    cheaknumber($nomer))
     {
     
    insert($nomer);
     } 
              
    }

    echo 
    "Start grab Link\r\n"
    Findurl('http://www.ss.lv','/lv/work/are-required/today/');
    echo 
    "Go Seach number\r\n";
    Sellink('http://www.ss.lv');
    echo 
    "\r\nFinish";


    Бекап сам бд.

    Code:
    
    -- phpMyAdmin SQL Dump
    -- version 2.11.6-dev
    -- http://www.phpmyadmin.net
    --
    -- Хост: localhost
    -- Время создания: Июл 10 2009 г., 11:35
    -- Версия сервера: 4.1.16
    -- Версия PHP: 5.2.9-2
    
    SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
    
    --
    -- База данных: `telbot`
    --
    
    -- --------------------------------------------------------
    
    --
    -- Структура таблицы `link`
    --
    
    CREATE TABLE IF NOT EXISTS `link` (
      `id_l` int(11) NOT NULL auto_increment,
      `links` varchar(255) NOT NULL default '',
      PRIMARY KEY  (`id_l`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=788 ;
    
    --
    -- Дамп данных таблицы `link`
    --
    
    
    -- --------------------------------------------------------
    
    --
    -- Структура таблицы `number`
    --
    
    CREATE TABLE IF NOT EXISTS `number` (
      `id` int(11) NOT NULL auto_increment,
      `num` varchar(11) NOT NULL default '0',
      `date` datetime NOT NULL default '0000-00-00 00:00:00',
      PRIMARY KEY  (`id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1733 ;
    
    --
    -- Дамп данных таблицы `number`
    --
    
    
    Работает через командную строку.
    код пустырный но раб 50%..