WWW::phpBB 0.01 review
DownloadWWW::phpBB is a phpBB forum scraper Perl module. SYNOPSIS use WWW::phpBB; # scrape as guest my $phpbb = WWW
|
|
WWW::phpBB is a phpBB forum scraper Perl module.
SYNOPSIS
use WWW::phpBB;
# scrape as guest
my $phpbb = WWW::phpBB->new(
base_url => 'http://localhost/~stefan/forum1',
db_host => 'localhost',
db_user => 'stefan',
db_passwd => 'somepass',
db_database => 'stefan',
db_prefix => 'phpbb2_',
);
$phpbb->empty_tables();
$phpbb->get_users();
$phpbb->scrape_forum_common();
# scrape a german forum, loging in just to get the memberlist
my $phpbb = WWW::phpBB->new(
base_url => 'http://localhost/~stefan/index.php?mforum=de',
db_host => 'localhost',
db_user => 'stefan',
db_passwd => 'somepass',
db_database => 'stefan',
db_prefix => 'phpbb3_',
post_date_format => qr/(d+)s+(w+),s+(d+)s+(d+):(d+)/,
post_date_pos => [qw(day_of_month month_name year hour minutes)],
forum_user => 'raDical',
forum_passwd => 'lfdiugyh',
);
$phpbb->empty_tables();
$phpbb->forum_login();
$phpbb->get_users();
$phpbb->forum_logout();
$phpbb->scrape_forum_common();
# update an already scraped forum, maybe as a daily cron job
# $phpbb->update_overwrite(1); # don't try to keep modified data
$phpbb->update_users();
$phpbb->update_forum_common();
This module can be used to scrape a phpBB instalation using the web interface. It requires a local phpBB setup that will be overwritten and it can only access what is available to the web browser (no private messages or user settings). Scraping is possible as a guest or as a loged in member.
If used with an administrator name and password it will copy all the member e-mails (not just the public ones) allowing them to request a new random password from the new installation site and continue using the forum. The current implementation lacks search support, but this problem will disappear if you convert the forum to SMF. The "mforum" script is supported.
Requirements:
WWW::Mechanize
Compress::Zlib
HTML::TokeParser::Simple
DBI
DBD::mysql
WWW::phpBB 0.01 search tags