PERL   65

parameters pl

Guest on 16th August 2022 01:13:47 AM

  1.  
  2.  
  3. my ($searchterm, $textfield,$facet, $sort, $expand,$more,$page,$record,$follow,$refine,$year,$month,$day,$time,$yr,$mon, $hour, $min, $sec,$seconds,$last_seconds,$elapsed);
  4.  
  5. while (<>){
  6.        
  7. $_ =~ s/%2B/\+/g;
  8.   $_ =~ s/%2b/\+/g;
  9.   $_ =~ s/%20/ /g;
  10.   $_ =~ s/ /\+/g;
  11.   $_ =~ s/%2C/,/g;
  12.   $_ =~ s/%2c/,/g;
  13.   $_ =~ s/%22/\"/g;
  14.   $_ =~ s/%27/\'/g;
  15.   $_ =~ s/%3D/=/g;
  16.   $_ =~ s/%3d/=/g;
  17.   $_ =~ s/%26/\&/g;
  18.   $_ =~ s/%3F/\?/g;
  19.   $_ =~ s/%3f/\?/g;
  20.   $_ =~ s/%2F/\//g;
  21.   $_ =~ s/%2f/\//g;
  22.   $_ =~ s/%3A/:/g;
  23.   $_ =~ s/%3a/:/g;
  24.   $_ =~ s/%7C/|/g;
  25.   $_ =~ s/%7c/|/g;
  26.  
  27.  
  28.  
  29.        
  30.   $_ =~ s/ntt=/Ntt=/g;
  31.   $_ =~ s/ntk=/Ntk=/g;
  32.   $_ =~ s/n=/N=/g;
  33.   $_ =~ s/ns=/Ns=/g;
  34.   $_ =~ s/ne=/Ne=/g;
  35.   $_ =~ s/no=/No=/g;
  36.   $_ =~ s/r=/R=/g;
  37.   $_ =~ s/nf=/Nf=/g;
  38.  
  39.  
  40.         $_ =~ s/\'//g;
  41.         $_ =~ s/\"//g;
  42.         $_ =~ s/\\//g;
  43.        
  44.         $_ =~ s/ //g;
  45.        
  46.        
  47.                
  48. my($user,$ipaddress,$datetime,$url,$reference,$visit_num,$visit_step)= split("  ",$_);
  49. chomp ($visit_step);
  50.  
  51.  
  52.  
  53.  
  54.  #searchterm;
  55.                 if ($url =~ /Ntt=&/ ||$url=~/Ntt=$/) {
  56.                 $searchterm = "-";
  57.                 } elsif ($url =~ /Ntt=(\S*?)&/) {
  58.                 $searchterm = $1;
  59.                 } elsif ($url=~/Ntt=(\S*?)$/) {
  60.                 $searchterm = $1;
  61.                 } else {
  62.                 $searchterm = "-";
  63.                 }
  64.                
  65.                
  66.                
  67.         # textfield;   
  68.                
  69.                 if ( $url=~/Ntk=&/ || $url=~/Ntk=$/) {
  70.                 $textfield = "-";
  71.                 } elsif ($url=~/Ntk=(\S*?)&/) {
  72.                 $textfield =  $1;
  73.                 } elsif ( $url=~/Ntk=(\S*?)$/) {
  74.                 $textfield = $1;
  75.                 } else {
  76.                 $textfield = "-";
  77.                 }
  78.  
  79.  
  80.         # facet;
  81.                 if ($url=~/N=&/ ||$url=~/N=$/) {
  82.                 $facet = "-";
  83.                 } elsif ($url=~/N=([^0]\d+?)$/) {
  84.                 $facet = $1;
  85.                 } elsif ($url=~/N=([0-9+#]*)$/) {
  86.                 $facet = $1;
  87.                 } elsif ($url=~/N=([^0].*?)&/) {
  88.                 $facet = $1;
  89.                 } elsif ($url=~/N=(0)/) {
  90.                 $facet = $1;
  91.                 } else {
  92.                 $facet = "-";
  93.                 }
  94.                
  95.                 if ($facet == "0"){
  96.                 $facet = "-";  
  97.                 }
  98. # sort order;
  99.                 if ($url=~/Ns=&/ ||$url=~ /Ns=$/) {
  100.                 $sort = "-";
  101.                 } elsif ($url=~/Ns=(\S*?)&/) {
  102.                 $sort = $1;
  103.                 } elsif ($url=~/Ns=(\S*?)$/) {
  104.                 $sort = $1;
  105.                 } else {
  106.                 $sort = "-";
  107.                 }
  108.         # expand facet;
  109.                 if ( $url=~/Ne=&/ ||$url=~  /Ne=$/) {
  110.                 $expand = "-";
  111.                 } elsif ($url=~/Ne=(\S*?)&/) {
  112.                 $expand = $1;
  113.                 } elsif ($url=~/Ne=(\S*?)$/) {
  114.                 $expand = $1;
  115.                 } else {
  116.                 $expand = "-";
  117.                
  118.                 }
  119.                
  120.                 # "more";
  121.  
  122. if ($url =~ /more=&/ || $url =~ /more=$/) {
  123.                 $more = "-";
  124.                 } elsif ($url =~ /closed=(\S*?)$/) {
  125.                 $more = $1;
  126.                 } elsif ($url =~ /more=(\S*?)&/) {
  127.                 $more = $1;
  128.                 } elsif ($url =~ /more=(\S*?)$/) {
  129.                 $more = $1;
  130.                 } else {
  131.                 $more = "-";
  132.                 }
  133.                 # pageview (page the user viewed if greater than 1);   
  134.                
  135.                 if ( $url=~/No=&/ || $url=~ /No=$/) {
  136.                 $page = "-";
  137.                 } elsif ( $url=~/No=(\S*?)&/) {
  138.                 $page = $1;
  139.                 } elsif ($url=~/No=(\S*?)$/) {
  140.                 $page = $1;
  141.                 } else {
  142.                 $page = "-";
  143.                 }
  144.                
  145.                 #record
  146.                         if ( $url=~/R=&/ || $url=~ /R=$/) {
  147.                 $record = "-";
  148.                 } elsif ( $url=~/R=(\S*?)&/) {
  149.                 $record = $1;
  150.                 } elsif ($url=~/R=(\S*?)$/) {
  151.                 $record = $1;
  152.                 } else {
  153.                 $record = "-";
  154.                 }
  155.                
  156.                 #follow-up analysis
  157.                 if ($url =~ /follow=(\S*)/) {
  158.                 $follow = $1;
  159.                 } elsif ($url=~/follow=(\S*)$/) {
  160.                 $follow= $1;
  161.                 } else {
  162.                 $follow = "-";
  163.                 }
  164.                
  165.                 #refine years
  166.                 if ($url =~ /Nf=&/ ||$url=~/Nf=$/) {
  167.                 $refine = "-";
  168.                 } elsif ($url =~ /Nf=(\S*?)&/) {
  169.                 $refine = $1;
  170.                 } elsif ($url=~/Nf=(\S*?)$/) {
  171.                 $refine = $1;
  172.                 } else {
  173.                 $refine = "-";
  174.                 }
  175.                
  176.                        
  177.                        
  178.                        
  179.         # Convert Date and Time to Epoch
  180.         # convert date;
  181.        
  182.          if ($datetime=~ /\[(\S+\/\S+\/\S+):(\d+:\d+:\d+)/){
  183.            $date = $1;
  184.            $time = $2;
  185.                
  186.           }
  187.          
  188.        
  189.        
  190.           if ($date =~ /(\S+)\/(...)\/(\S+)/) {
  191.                 $day = $1;
  192.                 $month = $2;
  193.                 $year = $3;
  194.                 }
  195.                
  196.                 if ($month eq "Jan") {
  197.                 $month = "1";
  198.                 } elsif ($month eq "Feb") {
  199.                 $month = "2";
  200.                 } elsif ($month eq "Mar") {
  201.                 $month = "3";
  202.                 } elsif ($month eq "Apr") {
  203.                 $month = "4";
  204.                 } elsif ($month eq "May") {
  205.                 $month = "5";
  206.                 } elsif ($month eq "Jun") {
  207.                 $month = "6";
  208.                 } elsif ($month eq "Jul") {
  209.                 $month = "7";
  210.                 } elsif ($month eq "Aug") {
  211.                 $month = "8";
  212.                 } elsif ($month eq "Sep") {
  213.                 $month = "9";
  214.                 } elsif ($month eq "Oct") {
  215.                 $month = "10";
  216.                 } elsif ($month eq "Nov") {
  217.                 $month = "11";
  218.                 } elsif ($month eq "Dec") {
  219.                 $month = "12";
  220.                 }
  221.        
  222.  
  223.                 if ($time =~ /(\d+):(\d+):(\d+)/) {
  224.        
  225.                 $hour = $1;
  226.                 $min = $2;
  227.                 $sec = $3;
  228.                
  229.         }
  230.                        
  231.                        
  232.          
  233.                 use Time::Local;
  234.                 $yr = $year-1900;
  235.                 $mon = $month-1;
  236.                
  237.                 $seconds = timelocal($sec, $min, $hour, $day, $mon, $yr);
  238.                
  239.  # elapsed
  240.          if ($visit_step ==1){
  241.                
  242.                 $elapsed = 0;
  243.          }else{
  244.                
  245.    $elapsed = $seconds-$last_seconds;
  246.    
  247.   }
  248.    
  249.    
  250.    
  251.  
  252.  
  253. print "$user;$ipaddress;$day;$month;$year;$time;$url;$reference;$searchterm;$textfield;$facet;$sort;$expand;$more;$page;$record;$follow;$refine;$seconds;$visit_num;$elapsed;$visit_step\n";
  254. #print "$record\n";
  255.  
  256. $last_seconds=$seconds;
  257.  
  258. }

Raw Paste


Login or Register to edit or fork this paste. It's free.