NAME
Scrappy::Queue - Scrappy HTTP Request Flow-Control System
VERSION
version 0.94112090
SYNOPSIS
#!/usr/bin/perl
use Scrappy::Queue;
my $queue = Scrappy::Queue->new;
$queue->add($url);
while (my $url = $queue->next) {
... $queue->add(...);
}
DESCRIPTION
Scrappy::Queue provides a system for saving URLs to a recordset/queue and iterating of them using the Scrappy framework.
METHODS
list
The list method return the list of URLs in the queue. This is returned in list context.
my $queue = Scrappy::Queue->new;
...
my @list = $queue->list;
add
The add method adds new URLs to the queue. Duplicate URLs will be ignored.
my $queue = Scrappy::Queue->new;
$queue->add($url);
clear
The clear method completely empties the queue and resets the cursor (loop position).
my $queue = Scrappy::Queue->new;
$queue->add(...);
$queue->add(...);
$queue->add(...);
$queue->clear;
reset
The reset method resets the cursor (loop position).
my $queue = Scrappy::Queue->new;
$queue->add(...);
$queue->add(...);
$queue->add(...);
while (my $url = $queue->next) {
$queue->reset if ...; # beware the infinate loop
}
$queue->reset;
current
The current method returns the URL in the current loop position.
my $queue = Scrappy::Queue->new;
$queue->add(...);
$queue->add(...);
$queue->add(...);
while (my $url = $queue->next) {
last if ...;
}
print 'great' if $url eq $queue->current;
next
The next method moves the cursor to the next loop position and returns the URL.
my $queue = Scrappy::Queue->new;
$queue->add(...);
$queue->add(...);
$queue->add(...);
while (my $url = $queue->next) {
...
}
previous
The previous method moves the cursor to the previous loop position and returns the URL.
my $queue = Scrappy::Queue->new;
$queue->add(...);
$queue->add(...);
$queue->add(...);
while (my $url = $queue->next) {
...
}
print $queue->previous;
first
The first method moves the cursor to the first loop position and returns the URL.
my $queue = Scrappy::Queue->new;
$queue->add(...);
$queue->add(...);
$queue->add(...);
print $queue->first;
last
The last method moves the cursor to the last loop position and returns the URL.
my $queue = Scrappy::Queue->new;
$queue->add(...);
$queue->add(...);
$queue->add(...);
print $queue->last;
index
The index method moves the cursor to the specified loop position and returns the URL. The loop position is a standard array index position.
my $queue = Scrappy::Queue->new;
$queue->add(...);
$queue->add(...);
$queue->add(...);
print $queue->index(1);
cursor
The cursor method returns the current loop position.
my $queue = Scrappy::Queue->new;
print $queue->cursor;
AUTHOR
Al Newkirk <awncorp@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2010 by awncorp.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.