bot update status fb pakai perl

software perl : http://strawberryperl.com/
script :


#!/usr/bin/perl
#
use strict;
use 
LWP::UserAgent;
use 
HTTP::Request::Common;
use 
HTTP::Cookies;#use LWP::Protocol::socks;push(@LWP::Protocol::http::EXTRA_SOCK_OPTSMaxLineLength => 16*1024);#use Getopt::Std;use Crypt::SSLeay;
$|=
1;
my $locale;my $ct;my $lsd;my $post_form_id;my $composer_id;my $fb_dtsg;
my $kuote ;my $tokoh ;my $taunhidup ;my $momen ;
my $Agent  "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1)";my $browser LWP::UserAgent->new;push @{ $browser->requests_redirectable }, 'POST';$browser -> agent($Agent);#$browser ->proxy(['http','https'], 'http://127.0.0.1:3128/');
#$browser ->proxy(['http'], 'http://10.19.19.19:8081/');
#$browser ->proxy(['http'], 'http://127.0.0.1:8118/');
#$browser ->proxy(['http'], 'socks://127.0.0.1:8081/');
my @waktu localtime(time);$browser->cookie_jar(HTTP::Cookies->new(file => "./log/lwpcookies_update_fb.txt"autosave => 1));my $log './log/update_fb_'.$waktu[3].($waktu[4]+1).($waktu[5]+1900).'-'.$waktu[2].'-'.$waktu[1].'-'.$waktu[0].'.txt';
my $url 'http://www.facebook.com/';my $urlutama 'https://login.facebook.com/';my $urllogin $urlutama.'login.php?login_attempt=1';my $user 'emailmu@email.com';my $password 'passwordmu';my $profile_id '1000004167XXXXX' ;my $urlprofil 'http://www.facebook.com/profile.php?id='.$profile_id;my $statusbaru;my $urlquote 'http://www.quotationspage.com/random.php3';

while (
1) {
 
#Get a random quote
 
&getquote($urlquote);

 
$statusbaru $kuote.' ['.$tokoh.' '.$taunhidup.' '.$momen.']';

 
#Inisiasi
 
&getstatus($url);
  
 
#Login :
 
&poslogin($urllogin,$user,$password,$url);

 
#Inisiasi
 
&getstatus1($urlprofil);

 
#Update Status :
 
&posupdate('http://www.facebook.com/ajax/updatestatus.php?__a=1',$urlprofil);

 
#Bersihkan cookie
 
$browser->cookie_jar->clear;

 
$kuote '';
 
$tokoh '';
 
$taunhidup '';
 
$momen '';

 
sleep 300;
}
sub getstatus1 {
    
my $uurl shift;
    
my $lihat HTTP::Request->new(GET => $uurl);
    
$lihat->content_type('application/x-www-form-urlencoded');
    
#$lihat->referer($urlutama.'index.php');
    
printlog("\n[*] Inisiasi $uurl\n");
    
my $lihatresponse $browser->request($lihat);
    if (
$lihatresponse->is_success) {
      
my $kutukupret=join("",$lihatresponse->as_string);
        if (
$kutukupret=~m#name="post_form_id" value="([a-zA-Z0-9]{32})"#) {
        #if ($kutukupret=~m#name="post_form_id" value="(.+?)"#) {
            
printlog("\n[+] post_form_id =  $1\n");
            
$post_form_id = $1;
        } else {    
printlog("\n[-] Hasil post_form_id tidak cocok !\n");
            
printlog($lihatresponse->as_string);
            
#die("[-] Error...\n\n");
            
}

        if (
$kutukupret=~m#id="globalContainer"><div id="([a-zA-Z0-9]{22})">#) {
        #if ($kutukupret=~m#id="globalContainer"><div id="(.+?)">#) {
            
printlog("\n[+] composer_id =  $1\n");
            
$composer_id = $1;
        } else {    
printlog("\n[-] Hasil composer_id tidak cocok !\n");
            
printlog($lihatresponse->as_string);
            
#die("[-] Error...\n\n");
            
}

        if (
$kutukupret=~m#name="fb_dtsg" value="(.+?)"#) {
            
printlog("\n[+] fb_dtsg =  $1\n");
            
$fb_dtsg = $1;
        } else {    
printlog("\n[-] Hasil fb_dtsg tidak cocok !\n");
            
printlog($lihatresponse->as_string);
            
#die("[-] Error...\n\n");
            
}

      }
    else {
       print 
"Error: ".$lihatresponse->status_line."\n\n" ;
       
#die("[-] Error...\n\n");
        
}
#end of sub
sub posupdate {
    
my $purl shift;
    
my $pref shift;

    
printlog ("\n[~] Processing: $purl :: $pref\n");
  
    
my $loginresponse $browser->request(POST $purl,
                       [ 
action    => 'PROFILE_UPDATE',
            
profile_id    => $profile_id,
            
status    => $statusbaru,
                         
target_id    => $profile_id,
                         
app_id    => '',
            
'privacy_data[value]'    => '80',
                         
'privacy_data[friends]'    => '0',
            
'privacy_data[list_anon]'    => '0',
            
'privacy_data[list_x_anon]'    => '0',
            
composer_id    => $composer_id,
            
hey_kid_im_a_composer    => 'true',
            
display_context    => 'profile',
            
post_form_id    => $post_form_id,
            
fb_dtsg    => $fb_dtsg,
            
_log_display_context    => 'profile',
            
ajax_log    => '1',
            
post_form_id_source    => 'AsyncRequest',
                       ],
            
'Referer'    => $pref,
            );


   
my $kutukupret=join("",$loginresponse->as_string);
   
#my $cucok=$kutukupret=~m/The requested URL could not be retrieved/sg;
   
if ($kutukupret=~m#$tokoh#sg) {
                
printlog("\n[+] Update status baru Berhasil ...\n");
                
#printlog($loginresponse->as_string);
               
}
    
elsif ($kutukupret=~m#<h2 class="main_message" id="standard_error">(.+?)</h2>#sg) {
                
printlog("\n[-] Update status baru Gagal ! $1.\n");
    }
    else {    
printlog("\n[-] Update status baru Gagal !\n");
            
printlog($loginresponse->as_string);
            die(
"Error...\n\n");
      }
}
 
sub poslogin {
    
my $purl shift;
    
my $puser shift;
    
my $ppassword shift;
    
my $pref shift;

    
printlog ("\n[~] Processing: $purl :: $puser :: $ppassword\n");
  
    
my $loginresponse $browser->request(POST $purl,
                       [ 
charset_test    => $ct,
            
locale    => $locale,
            
email    => $puser,
                         
pass    => $ppassword,
                         
persistent    => '1',
            
charset_test    => $ct,
                         
lsd    => $lsd,
                       ],
            
'Referer'    => $pref,
            );


   
my $kutukupret=join("",$loginresponse->as_string);
   
#my $cucok=$kutukupret=~m/The requested URL could not be retrieved/sg;
   
if ($kutukupret=~m#Title: Redirecting\.\.\.#sg) {
                
printlog("\n[+] Login Berhasil ...\n");
                
#printlog($loginresponse->as_string);
               
}
    
elsif ($kutukupret=~m#<h2 class="main_message" id="standard_error">(.+?)</h2>#sg) {
                
printlog("\n[-] Login Gagal ! $1.\n");
    }
    else {    
printlog("\n[-] Login Gagal !\n");
            
printlog($loginresponse->as_string);
            die(
"Error...\n\n");
      }
}
sub getstatus {
    
my $uurl shift;
    
my $lihat HTTP::Request->new(GET => $uurl);
    
$lihat->content_type('application/x-www-form-urlencoded');
    
#$lihat->referer($urlutama.'index.php');
    
printlog("\n[*] Inisiasi $uurl\n");
    
my $lihatresponse $browser->request($lihat);
    if (
$lihatresponse->is_success) {
      
my $kutukupret=join("",$lihatresponse->as_string);
        if (
$kutukupret=~m#name="charset_test" value="(.+?)" />#) {
            
printlog("\n[+] charset_test =  $1\n");
            
$ct = $1;
        } else {    
printlog("\n[-] Hasil charset_test tidak cocok !\n");
            
printlog($lihatresponse->as_string);
            
#die("[-] Error...\n\n");
            
}

        if (
$kutukupret=~m#name="locale" value="(.+?)"#) {
            
printlog("\n[+] locale =  $1\n");
            
$locale = $1;
        } else {    
printlog("\n[-] Hasil locale tidak cocok !\n");
            
printlog($lihatresponse->as_string);
            
#die("[-] Error...\n\n");
            
}

        if (
$kutukupret=~m#name="lsd" value="(.+?)"#) {
            
printlog("\n[+] lsd =  $1\n");
            
$lsd = $1;
        } else {    
printlog("\n[-] Hasil lsd tidak cocok !\n");
            
printlog($lihatresponse->as_string);
            
#die("[-] Error...\n\n");
            
}

      }
    else {
       print 
"Error: ".$lihatresponse->status_line."\n\n" ;
       
#die("[-] Error...\n\n");
        
}
#end of sub
sub getquote {
    
my $uurl shift;
    
my $lihat HTTP::Request->new(GET => $uurl);
    
$lihat->content_type('application/x-www-form-urlencoded');
    
printlog("\n[*] Inisiasi $uurl\n");
    
my $lihatresponse $browser->request($lihat);
    if (
$lihatresponse->is_success) {
      
my $kutukupret=join("",$lihatresponse->as_string);
        
$kutukupret=~s#, <i>##sg;
        
$kutukupret=~s#</i>##sg;
        
if ($kutukupret=~m#<a title="Click for further information about this quotation" href="(?:.+?)">(.+?)</a>(?:.+?)<a href="(?:.+?)">(.+?)</a>(.+?){0,1}</b>(.+?){0,1}</dd>#) {
            
printlog("\n[+] Hasil get a random quote =  $1 ::: $2::: $3::: $4\n\n");
            
$kuote = $1;
            
$tokoh = $2;
            
$taunhidup = $if ($3);
            
$momen = $if ($4);
            
#printlog($kutukupret);
        
} else {    printlog("\n[-] Hasil tidak cocok !\n");
            
#printlog($lihatresponse->as_string);
            
printlog($kutukupret);
            
#die("[-] Error...\n\n");
            
}

      }
    else {
       print 
"Error: ".$lihatresponse->status_line."\n\n" ;
       
#die("[-] Error...\n\n");
        
}
#end of sub
sub printlog {
 print 
$_[0];
 
open(LOO,">>$log");
 print 
LOO $_[0];
 
close(LOO);
 return;



0 komentar to "bot update status fb pakai perl"

Posting Komentar

Laman

x0wn3d

nanda. Diberdayakan oleh Blogger.

About This Blog

My Blogs

Followers

Web hosting for webmasters