#!/usr/bin/perl our ($user, $pass); require $ENV{HOME}."/.twitter.cf"; die "no \$user, \$pass in ~/.twitter.cf" unless ($user && $pass); my $BLOCKLIST = qr/^(?: juancarzola )$/ix; use Net::Twitter; my $twit = Net::Twitter->new(username=>$user, password=>$pass ); my $fol = $twit->followers(); # use Data::Dumper; warn "JMD ".Dumper($fol); # debug my $opml = q{ twitter followers for }.$user.q{ }; foreach my $friend (@{$fol}) { if (!$friend->{id}) { warn "no id found for $friend"; next; } if (!$friend->{screen_name}) { warn "no screen_name found for $friend"; next; } next if ($friend->{screen_name} =~ $BLOCKLIST); my $who = "$friend->{name} ($friend->{screen_name})"; my $rsslink = "http://twitter.com/statuses/user_timeline/".$friend->{id}.".atom"; my $link = "http://twitter.com/".$friend->{screen_name}; my $avatar = "$friend->{profile_image_url}"; # note: face and screenname are not standard OPML attributes $opml .= qq{ }; } $opml .= q{ }; print $opml,"\n";