我只是一名初学者,正在学习并尝试在此刻实施一系列事情。
我正在尝试从在线PDF文件中获取文本。
我有一个代码正在下载单个文件:
#!/usr/bin/perl
use warnings;
use strict;
use POSIX 'strftime';
use LWP::Simple;
my $url = 'http://www.gpo.gov/fdsys/pkg/CREC-2011-01-26/pdf/';
my $file = 'CREC-2011-01-26.pdf', localtime;
getstore( "$url/$file", $file );
我想知道是否有办法修改日期:比如说,在评论行中将日期更改为2011-01-25,并提取一年内的所有文件?
此外,有没有办法从在线来源获取文本而不下载文件。我很感激!
答案 0 :(得分:1)
迭代2011年的所有日子:
use 5.010;
use DateTime qw();
my $counter = DateTime->new(year => 2011, month => 1, day => 1,);
my $end = DateTime->new(year => 2012, month => 1, day => 1,);
while ($counter < $end) {
say $counter->ymd(q(-));
# 2011-01-01
# 2011-01-02
# 2011-01-03
# 2011-01-04
# ⋮
# 2011-12-28
# 2011-12-29
# 2011-12-30
# 2011-12-31
$counter->add(days => 1);
}
只需从在线资源获取文字而无需下载文件
典型的self-answered question。该函数是get
。请阅读您正在使用的软件的文档。
答案 1 :(得分:-2)
Perl有“for loop”。它们将是您尝试跨所有日期下载文件的好方法。您最终可能会有两个嵌套循环,一个用于几个月,一个用于日期。了解更多信息:
请不要忘记尊重版权,并引用参考文献。