gpt4 book ai didi

perl - WWW::Mechanize 在六秒后进行第二次重定向

转载 作者:行者123 更新时间:2023-12-01 02:12:01 25 4
gpt4 key购买 nike

我正在使用 Perl 和 WWW::Mechanize 模块将表单提交到网页并将结果保存到文件中。我知道如何提交表单和保存数据,但是在这六秒的重定向之后我无法保存数据。

提交表单后,页面被重定向到一个页面,上面写着

Results should appear in this window in approximately 6 seconds...

并再次将其重定向到具有我想要的结果的页面。我的脚本可以遵循第一个重定向,但不能遵循第二个重定向,并且没有链接说“如果未重定向,请单击此处”。

这是我的脚本

use WWW::Mechanize;

my $mech = WWW::Mechanize->new(autocheck => 1);

$mech->get( "http://tempest.wellesley.edu/~btjaden/TargetRNA2/index.html");

$result = $mech->submit_form(
form_number => 1,
fields => {
text => 'Escherichia coli str. K-12 substr. MG1655',
sequence => '>RyhB' . "\n" .
'GCGATCAGGAAGACCCTCGCGGAGAACCTGAAAGCACGACATTGCTCACATTGCTTCCAGTATTACTTAGCCAGCCGGGTGCTGGCTTTT',
}
);
$mech->save_content(result);

最佳答案

您需要做的是提取重定向 URL 并手动运行它:

试试这个:

use WWW::Mechanize;

my $mech = WWW::Mechanize->new( autocheck => 1 );

$mech->get( "http://tempest.wellesley.edu/~btjaden/TargetRNA2/index.html");

$result = $mech->submit_form(
form_number => 1,
fields =>
{
text => 'Escherichia coli str. K-12 substr. MG1655',
sequence => '>RyhB GCGATCAGGAAGACCCTCGCGGAGAACCTGAAAGCACGACATTGCTCACATTGCTTCCAGTATTACTTAGCCAGCCGGGTGCTGGCTTTT',
}
);

my $content = $mech->content;
my $url1 = 'http://tempest.wellesley.edu/~btjaden/cgi-bin/';
my ($url2) = $content =~ /URL=(targetRNA2\.cgi?.+)?">/;

$mech->get($url1.$url2);

$mech->save_content(result);

关于perl - WWW::Mechanize 在六秒后进行第二次重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28508971/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com