blob: 39ddd553632c55314aa913930de627ce0f4ba402 [file] [log] [blame]
# Part of get-flash-videos. See get_flash_videos for copyright.
package FlashVideo::Site::Yourupload;
use strict;
use FlashVideo::Utils;
use URI::Escape;
our $VERSION = '0.01';
sub Version() { $VERSION; }
sub find_video {
my ($self, $browser, $embed_url) = @_;
my $flashvars = "";
my $file = "";
my $url = "";
my $name = "";
if ($embed_url !~ /http:\/\/yourupload.com\/embed\//) {
if ($browser->content =~ /<iframe src="(http:\/\/yourupload.com\/embed\/[^"]+)" style/) {
$embed_url = $1;
$browser->get($embed_url);
} else {
# we can't find the frame with embed URL
return;
}
}
# get configuration passed to flash player
if ($browser->content =~ /\s*flashvars="([^"]+)"/) {
$flashvars = $1;
} else {
# if we can't get it, just leave as the video URL is there
debug("Can't find flashvars");
return;
}
debug ("Flashvars: " . $flashvars);
# in the configuration there is also URL we're looking for
if ($flashvars =~ /&file=(http[^&]+)&/) {
$file = $1;
} else {
debug("Can't find file");
return;
}
debug("File: " . $file);
$url = uri_unescape($file);
debug("URL: '" . $url . "'");
# URL ends with filename
$name = $url;
$name =~ s/.*\/([^\/]+\.(flv|mp4)).*/$1/;
debug("Filename: " . $name);
return $url, title_to_filename($name);
}
1;