我正在尝试用 perl 制作一个 youtube 下载器脚本,方法是用 youtube 链接填写一个 youtube 下载器站点表单,提交它并接受要下载的文件。
我尝试了许多不同的代码,但我无法填写表格,我认为这是因为表格位于 < div > 标签中。
我怎样才能做到这一点 ?
谢谢你。
#!/usr/bin/perl
use strict;
use warnings;
use CGI;
use WWW::Mechanize;
my $url = 'http://www.youtube-mp3.org';
my $m = WWW::Mechanize->new();
my $textbox = 'youtube-url';
my $youtubelink = "http\:\/\/www.youtube.com\/watch\?v\=lDK9QqIzhwk";
my $cgi = CGI->new();
my $form = $cgi->Vars;
$m->get($url);
$m -> form_number ('1');
$m -> field($youtubelink, $form->{$textbox});
$m -> submit();
$m->submit();
print $m -> content();
$m->follow_link(text_regex => qr/Download/i);
my $response = $m->res();
my $filename = $response->filename;
if (! open ( FOUT, ">$filename" ) ) {
die("Could not create file: $!" );
}
print( FOUT $m->response->content() );
close( FOUT );