Advertisement
Guest User

Untitled

a guest
Jun 24th, 2012
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.16 KB | None | 0 0
  1. <?php
  2.  
  3. error_reporting(E_ALL);
  4.  
  5. if(isset($_POST['url']))
  6. {
  7.     set_time_limit(100000);
  8.  
  9.     $list = explode("\n", $_POST['url']);
  10.    
  11.     foreach($list as $url)
  12.     {
  13.         $url = str_replace("http://","",$url);
  14.         $url = str_replace("www.","",$url);
  15.         $url = str_replace("/read","",$url);
  16.         $url = str_replace("\n","",$url);
  17.         $url = str_replace("\r","",$url);
  18.         $url = explode("/", $url);
  19.                
  20.         $title = $url[2];
  21.         $title = str_replace("-english","",$title);
  22.         $title = str_replace("-japanese","",$title);
  23.         $title = str_replace("-chinese","",$title);
  24.         $title = str_replace("-"," ",$title);
  25.        
  26.         $url = 'http://www.fakku.net/'. $url[1] .'/'. $url[2] .'/read';
  27.         $url = str_replace(" ","",$url);
  28.        
  29.         $data = get_web_page($url);
  30.         $content = $data['content'];
  31.        
  32.         preg_match("'               return \'http:\/\/cdn.fakku.net\/(.*?)\'.jpg\';'", $content, $result);
  33.        
  34.         $jpgurl = str_replace("' + x + ","",$result[1]);
  35.         $jpgurl = "http://cdn.fakku.net/" . $jpgurl;
  36.  
  37.         preg_match("'var data = (.*?)\"]};'", $content, $result);
  38.        
  39.         $thumbs = $result[1] . '"]}';
  40.        
  41.         $data2 = json_decode($thumbs);
  42.        
  43.         $folder = $title;
  44.  
  45.         if( ! is_dir($folder))
  46.         {
  47.             mkdir($folder, 0777);
  48.         }
  49.  
  50.         $i = 0;
  51.         foreach($data2->thumbs as $thumbs)
  52.         {
  53.             $i++;
  54.             if(strlen($i) == 1)
  55.             {
  56.                 $y = "00" . $i;
  57.             }
  58.             if(strlen($i) == 2)
  59.             {
  60.                 $y = "0" . $i;
  61.             }
  62.            
  63.             $x = $jpgurl . $y . '.jpg';
  64.                    
  65.             write_file($x, $folder, $y);
  66.         }
  67.         echo $title . " - done<br>";
  68.     }
  69.     echo "<br>";
  70. }
  71. echo '<html>
  72. <body>
  73. <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=yes">
  74. <form action="" method="post">
  75.     <input style="border:1px solid; padding:5px 60px;" type="submit" value="Download"><br>
  76.     <br>
  77.     <textarea name="url" style="width:100%;max-width:600px;height:400px;"></textarea>
  78. </form>
  79. </body>
  80. </html>';
  81.  
  82. function write_file( $url, $folder, $y )
  83. {
  84.     //$url = str_replace("cdn.fakku.net","93.184.221.132",$url);
  85.     $ch = curl_init($url);
  86.     $fp = fopen($folder . '/'. $y . '.jpg', 'wb');
  87.     curl_setopt($ch, CURLOPT_FILE, $fp);
  88.     curl_setopt($ch, CURLOPT_HEADER, 0);
  89.     curl_exec($ch);
  90.     curl_close($ch);
  91.     fclose($fp);
  92. }
  93.  
  94. function get_web_page( $url )
  95. {
  96.     $options = array(
  97.         CURLOPT_RETURNTRANSFER => true,     // return web page
  98.         CURLOPT_HEADER         => false,    // don't return headers
  99.         CURLOPT_FOLLOWLOCATION => true,     // follow redirects
  100.         CURLOPT_ENCODING       => "",       // handle all encodings
  101.         CURLOPT_USERAGENT      => "", // who am i
  102.         CURLOPT_AUTOREFERER    => true,     // set referer on redirect
  103.         CURLOPT_CONNECTTIMEOUT => 20,      // timeout on connect
  104.         CURLOPT_TIMEOUT        => 60,      // timeout on response
  105.         CURLOPT_MAXREDIRS      => 10,       // stop after 10 redirects
  106.     );
  107.  
  108.     $ch      = curl_init( $url );
  109.     curl_setopt_array( $ch, $options );
  110.     $content = curl_exec( $ch );
  111.     $err     = curl_errno( $ch );
  112.     $errmsg  = curl_error( $ch );
  113.     $header  = curl_getinfo( $ch );
  114.     curl_close( $ch );
  115.  
  116.     $header['errno']   = $err;
  117.     $header['errmsg']  = $errmsg;
  118.     $header['content'] = $content;
  119.     return $header;
  120. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement