This converts Netscape (4.7) bookmarks.html to a hash. Sort of. It prints out what a hash would look like so you can just concatenate it to a script youre working on. The heart of this is a regular expression, some credit for which is due to
japhy. I used this to create a cgi for my bookmarks from several different machines (work, home, laptop, etcetera) that I had been running linux on.
I have only tested this on linux boxes.
#!/usr/bin/perl -w
use strict;
my $bms;
{ local $/; my $file = shift; open BMS, $file; $bms = <BMS> }
my @html = split /<DT>/, $bms;
foreach my $link (@html) {
my ($dest, $name) = $link =~ m#<A HREF="([^"]+)"[^>]*>([^<]+)</A>#;
print <<"EOF";
{
'$name' =>
'$dest'
},
EOF
}