当ftp服务器上存在文件时,访问sec edgar主文件的perl脚本返回未找到的文件

当ftp服务器上存在文件时,访问sec edgar主文件的perl脚本返回未找到的文件,perl,ftp,http-status-code-404,Perl,Ftp,Http Status Code 404,如果有人能帮忙,那就太好了。我真的被卡住了 我正在从SEC edgar下载主文件,脚本来自-(第14页..现在发布) 我得到错误404 master.gz找不到 调试时,我让它粘贴url,当我在浏览器中使用相同的url时,我可以下载文件。在QTR1之前,它一直在正确解析url,但在此之后,当文件实际存在时,它无法找到该文件。请帮助 1) 出于调试原因,我现在将代码改为1995年(但后来计划将1995年增加到2012年) 2) 它对任何文件都不起作用。当我说QTR1 abovr时——我的意思是没有

如果有人能帮忙,那就太好了。我真的被卡住了

我正在从SEC edgar下载主文件,脚本来自-(第14页..现在发布)

我得到错误404 master.gz找不到 调试时,我让它粘贴url,当我在浏览器中使用相同的url时,我可以下载文件。在QTR1之前,它一直在正确解析url,但在此之后,当文件实际存在时,它无法找到该文件。请帮助

1) 出于调试原因,我现在将代码改为1995年(但后来计划将1995年增加到2012年)

2) 它对任何文件都不起作用。当我说QTR1 abovr时——我的意思是没有文件名的相同代码(仅用于测试)——完整索引/1995/QTR1/(没有文件名)返回状态代码OK,但…ftp.sec.gov/edgar/full-index/1995/QTR1/master.gz返回404文件未找到错误。它在任何季度都不起作用

我在这件看似简单的事情上浪费了太多的时间,这件事情本来应该会起作用的,但它就是不起作用。。。。你能把它复制过去然后运行吗..它对你有用吗

下面的代码从QTR文件夹获取主文件。粘贴我的代码::

------

use LWP::UserAgent;
my $ua = LWP::UserAgent->new;
$ua->timeout(250);
$ua->env_proxy;

for($year=1995; $year<1996; $year=$year+1){
for($i=1; $i<5; $i=$i+1){
$quarter = “QTR” . $i;
$filegrag = “ftp://ftp.sec.gov/edgar/full-index/” . $year . “/” . $quarter .       “/master.gz”;
print $filegrag;

# This command gets the file from EDGAR
my $response = $ua->get($filegrag);
print $response;
  print $response->status_line;

# Now just pipe the output to a file named appropriately
$filename = $year . $quarter . “master”;
open(MYOUTFILE, “>” . $filename);
if ($response->is_success)  {
print MYOUTFILE $response->decoded_content;
}
else {
die $response->status_line;
}
close(MYOUTFILE);
}
}
使用LWP::UserAgent;
my$ua=LWP::UserAgent->new;
$ua->超时(250);
$ua->env_代理;
对于($year=1995;$yearstatus\u行;
#现在只需通过管道将输出传输到一个名为
$filename=$year.$quarter.“master”;
打开(MYOUTFILE,“>”$filename);
如果($response->is\u success){
打印MYOUTFILE$response->解码内容;
}
否则{
骰子$response->status\u行;
}
关闭(MYOUTFILE);
}
}

我意识到有一些防火墙问题导致了我的问题。现在一切都好了。

为我显示运行scriptWorks的输出。FTP服务器有时过载,需要很长时间才能回复。非常感谢。我意识到有一些防火墙问题导致了我的问题。现在瘦了好的