am nevoie sa traduc un fisier cgi in php
eu nu stiu perl si nu inteleg acest cod...poate cineva sa ma ajute chiar in mare...macar sa stiu ce face fisierul acesa ca sa pot sa fac un fis php la fel!
#!/usr/bin/perl
use CGI;
use CGI::Carp qw(fatalsToBrowser);
use LWP::UserAgent;
$q = new CGI;
$num = $q->param('num');
$keyword = $q->param('keyword');
$text = $q->param('text');
#if($keyword eq ""){
print $q->header;
print qq~<html><head><title>Video Extractor</title></head>
<body>
<form action="vidgen.cgi" method="post">
<table border=0>
<tr><td>Enter Keyword </td><td>: <input type="text" name="keyword"></td></tr>
<tr><td>Number video to extract each source</td><td>: <input type="text" name="num"></td></tr>
<tr><td>Extra Text</td><td></td></tr>
<tr><td><textarea name="text"></textarea></td><td></td></tr>
<tr><td><input type=submit value="Generate"></td><td></td></tr>
</table>
</form>
~;
# exit;
#}
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime time;
$yearnow = $year-100;
$yearnow = 2000 + $yearnow;
$mon=$mon+1;
$curdate = "$yearnow\-0$mon";
mkdir("$curdate",0755);
########Read text file
sub get_file_contents{
######################
my ($filename) = @_;
my ($filesize, $filesize, $thefile);
if ((-e "$filename") > 0)
{
$filesize = (-s "$filename");
open (TFILECNTS, "$filename") || die "$filename";
read(TFILECNTS,$thefile,$filesize);
close (TFILECNTS);
}
return ($thefile);
}
#############
sub fetch
#############
{
my ($url) = @_;
my $page_returned = "";
use LWP::UserAgent;
$ua = new LWP::UserAgent;
$ua->agent('Mozilla/4.0');
my $req = new HTTP::Request GET => "$url";
my $res = $ua->request($req);
if ($res->is_success)
{ $page_returned = $res->content; }
return $page_returned;
}
############
sub error {
############
$message = shift;
print $q->header;
print qq~Error : $message~;
exit;
}
################
sub red_tube {
################
if($keyword eq ""){
exit;
}
$redtube = fetch("http://www.redtube.com/?search=$keyword");
$redtube =~ s/\"//ig;
$redtube =~ s/\'//ig;
while($redtube =~ /\<a class\=s target\=\_blank href\=(.*?)\>(.*?)\<\/a\>\<\/td\>/ig){
push(@pagecoll, "$1|$2");
}
$pagecoll = @pagecoll;
$curnum = 0;
print qq~<b><font color="green">Processing Redtube using "$keyword" as keyword</font></b>
\n~;
foreach $itemred(@pagecoll){
if($curnum < $num){
@itemredinfo = split(/\|/, $itemred);
$embedurl =$itemredinfo[0];
@embedid = split(/\//, $embedurl);
$titles =$itemredinfo[1];
$titles =~ s/\)//ig;
$titles =~ s/^.*(\\|\/)//;
$titles =~ s/\s+/_/ig;
$titles =~ s/\./PsJsDoT/g;
$titles =~ s/\-/PsJsDaSh/g;
if($titles =~ /\W/){
$titles =~ s/\W/_/ig;
}
$titles =~ s/PsJsDoT/\./g;
$titles =~ s/PsJsDaSh/\-/g;
$embedcode = qq~<object height="344" width="434"><param name="movie" value="http://embed.redtube.com/player/"><param name="FlashVars" value="id=$embedid[3]&style=redtube"><embed src="http://embed.redtube.com/player/?id=$embedid[3]&style=redtube" pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" height="344" width="434"></object>~;
$filetemplate = get_file_contents("template.html");
$filetemplate =~ s/\<\!\-\-embed tag\-\-\>/$embedcode/is;
$filetemplate =~ s/<\!\-\-title\-\-\>/$itemredinfo[1]/ig;
$filetemplate =~ s/<\!\-\-text\-\-\>/$text/ig;
$filetemplate =~ s/<\!\-\-keyword\-\-\>/$keyword/ig;
open(FILE, ">$curdate/$titles.html");
print FILE $filetemplate;
close(FILE);
print "Creating $curdate/$titles.html
\n";
}
$curnum++;
}
}
###################
sub porn_tube {
###################
$keyword="japan";
if($keyword eq ""){
exit;
}
$porntube = fetch("http://www.pornotube.com/search.php?q=$keyword");
$porntube =~ s/\"//ig;
$porntube =~ s/\'//ig;
print $porntube;
while ($porntube =~ /\<p\>\<a href\=(.*?) class\=channelBorder text\>(.*?)\<\/a\>\<\/p\>/ig){
push(@ppagecoll, "$1|$2");
}
foreach $itemporn(@ppagecoll){
print "$itemporn\n";
#<embed src="http://pornotube.com/player/v.swf?v=bT0xNDM3NjU1JmFtcDtsb2NhbD1mYWxzZSZhbXA7dT0yMQ==" loop="false" quality="high" width="480" height="400" name="pornoPlayer" allowfullscreen="true" allowScriptAccess="always" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
}
}
##################
sub x_tube {
##################
use HTTP::Cookies;
use LWP;
#http://www.xtube.com/index.php?a=S
if($keyword eq ""){
exit;
}
my $browser = LWP::UserAgent->new( );
my $cookie_jar = HTTP::Cookies->new( );
$browser->cookie_jar( $cookie_jar );
my $req1 = new HTTP::Request GET => "http://www.xtube.com/index.php?a=S";
my $res1 = $browser->request($req1);
if ($res1->is_success){
my $req2 = new HTTP::Request GET => "http://www.xtube.com/results.php?type=video&search=$keyword";
my $res2 = $browser->request($req2);
$xtube = $res2->content;
$xtube =~ s/\"//ig;
$xtube =~ s/\'//ig;
$xtube =~ s/amp\;//ig;
}
$curnum = 0;
print "<b><font color='green'>Processing Xtube using $keyword as keyword</font></b>
";
while($xtube =~ /alt\= border\=0\>\ \;\<a href\=http\:\/\/www\.xtube\.com\/play\_re\.php\?v\=(.*?)\&page\=1\>(.*?)\<\/a\>\<br\>/ig){
#print qq~http://www.xtube.com/play_re.php?v=$1&page=1\n~;
if($curnum < $num){
my $req3 = new HTTP::Request GET => "http://www.xtube.com/play_re.php?v=$1&page=1";
my $res3 = $browser->request($req3);
$xtubep = $res3->content;
$xtubep =~ m#\<embed src\=\"(.*?)\" quality\=\"high\"#is;
$xtube_embedcode = qq~<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="338" height="315" id="player" align="middle">
<param name="allowScriptAccess" value="sameDomain" />
<param name="movie" value="$1" />
<param name="quality" value="high" /><param name="bgcolor" value="#ffffff" />
<embed src="$1" quality="high" bgcolor="#ffffff" width="338" height="315" name="player" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer">
</embed></object> \n~;
$xtubep =~ m#\<h5\>(.*?)\<\/h5\>#is;
$xtubetitle = "$1";
$xtubep =~ m#\<\!\-\- Content \-\-\>(.*?)\<\!\-\- Bottom Corners \-\-\>#is;
$xtubepd = $1;
$xtubepd =~ m#\<h4\>(.*?)\<\/h4\>#is;
$xtubedesc = "$1";
$titles =$xtubetitle;
$titles =~ s/\)//ig;
$titles =~ s/^.*(\\|\/)//;
$titles =~ s/\s+/_/ig;
$titles =~ s/\./PsJsDoT/g;
$titles =~ s/\-/PsJsDaSh/g;
if($titles =~ /\W/){
$titles =~ s/\W/_/ig;
}
$titles =~ s/PsJsDoT/\./g;
$titles =~ s/PsJsDaSh/\-/g;
$filetemplate = get_file_contents("template.html");
$filetemplate =~ s/\<\!\-\-embed tag\-\-\>/$xtube_embedcode/is;
$filetemplate =~ s/<\!\-\-title\-\-\>/$xtubetitle/ig;
$filetemplate =~ s/<\!\-\-text\-\-\>/$text/ig;
$filetemplate =~ s/<\!\-\-keyword\-\-\>/$keyword/ig;
open(FILE, ">$curdate/$titles.html");
print FILE $filetemplate;
close(FILE);
print "Creating $curdate/$titles.html
\n";
}
$curnum++;
}
}
###############
sub porn_hub {
###############
if($keyword eq ""){
exit;
}
$porn_hub = fetch("http://www.pornhub.com/main.php?action=webmasters%2Fembedded_videos_search&categories=0&duration=0&order_by=most_recent&search_keyword=$keyword&go=Go");
$porn_hub =~ s/\"//ig;
$porn_hub =~ s/\'//ig;
$porn_hub =~ s/amp\;//ig;
$porn_hub =~ s/\n//ig;
print qq~<b><font color='green'>Processing Pornhub using "$keyword" as Keyword</font></b>
\n~;
$curnum = 0;
while($porn_hub =~ /\<a href\=main\.php\?action\=watch\&vkey\=(.*?)\>/ig){
if($cur_hub_key ne $1){
if($curnum < $num){
$cur_hub_key = $1;
$porn_hub =~ m#\<a href\=main\.php\?action\=watch\&vkey\=$cur_hub_key\>(.*?)\<span\>#is;
$titlephub = $1;
$titlephub =~ m#\<b\>(.*?)\<\/b\>#is;
$titlephub = $1;
$embedcode = qq~<embed src="http://www.pornhub.com/videoplayer.swf" FlashVars="config=http://www.pornhub.com/flvplayer.php?viewkey=$cur_hub_key" quality="high" bgcolor="#000000" width="450" height="395" loop="false" align="middle" allowFullScreen="true" allowScriptAccess="always" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" scale="exactfit" > </embed>\n~;
$titles =$titlephub;
$titles =~ s/\)//ig;
$titles =~ s/^.*(\\|\/)//;
$titles =~ s/\s+/_/ig;
$titles =~ s/\./PsJsDoT/g;
$titles =~ s/\-/PsJsDaSh/g;
if($titles =~ /\W/){
$titles =~ s/\W/_/ig;
}
$titles =~ s/PsJsDoT/\./g;
$titles =~ s/PsJsDaSh/\-/g;
$filetemplate = get_file_contents("template.html");
$filetemplate =~ s/\<\!\-\-embed tag\-\-\>/$embedcode/is;
$filetemplate =~ s/<\!\-\-text\-\-\>/$text/ig;
$filetemplate =~ s/<\!\-\-keyword\-\-\>/$keyword/ig;
$filetemplate =~ s/<\!\-\-title\-\-\>/$titlephub/ig;
open(FILE, ">$curdate/$titles.html");
print FILE $filetemplate;
close(FILE);
print "Creating $curdate/$titles.html
\n";
}
$curnum++;
}
}
}
red_tube;
#porn_tube;
x_tube;
porn_hub;