Perl - загрузка нескольких файлов PDF с датой в URL в текст - PullRequest
1 голос
/ 11 января 2012

Я только начинающий, учусь и пытаюсь реализовать кучу вещей в данный момент.

Я пытаюсь получить текст из онлайн-файлов 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 в строке комментария и извлечь все файлы за один год?

Кроме того, есть ли способ просто получить текст из онлайн-источника без загрузки файлов.Я ценю его!

Ответы [ 2 ]

1 голос
/ 11 января 2012

Чтобы выполнить итерацию по всем дням 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);
}

просто получите текст из онлайн-источника без загрузки файлов

Типичный ответ на вопрос .Функция get.Прочитайте документацию по программному обеспечению, с которым вы работаете.

0 голосов
/ 11 января 2012

Perl имеет "для цикла".Они станут для вас отличным способом попробовать скачать файлы за все даты.Вы, вероятно, в итоге получите две вложенные циклы, одну для месяцев и одну для дат.Узнайте больше на:

http://perl.about.com/od/perltutorials/a/forloop_2.htm

Пожалуйста, не забывайте соблюдать авторские права и ссылаться на ссылки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...