#!/usr/bin/perl use strict; use warnings; use Net::Delicious; use Netscape::Bookmarks; use Netscape::Bookmarks::Category; use Netscape::Bookmarks::Link; use Date::Parse; use Data::Dumper; my %folders; my $folder; my $tags; my $link; my @tags; my @posts; my %flist; my $debug = 0; # Add your details here my $del = Net::Delicious->new({user=>"", pswd=>""}); my $bookmarks = Netscape::Bookmarks->new; foreach ($del->tags()) { $folders{$_->{tag}} = new Netscape::Bookmarks::Category ({'title' => $_->{tag}}); push @tags, $_->{tag}; } if ($debug) { print Dumper (%folders); print Dumper (@tags); } if ($debug) { @posts = $del->recent_posts(); } else { @posts = $del->all_posts(); } foreach (@posts) { $link = Netscape::Bookmarks::Link->new({'TITLE' => $_->description(), 'DESCRIPTION' => $_->extended(), 'HREF' => $_->href(), 'ADD_DATE' => str2time($_->time())}); print $_->tags."\n"; foreach (split (/ /, $_->tags())) { if ($debug) {print "$_\n";} if (!$flist{$_}) { $flist{$_} = Netscape::Bookmarks::Category->new($folders{$_}); } if ($debug) {print Dumper($flist{$_});} $flist{$_}->add (\$link); if ($debug) {print $flist{$_}->as_string;} } } while (my ($key, $bmark) = each (%flist)) { $bookmarks->add (\$bmark); } print $bookmarks->as_string;