http://www.perlmonks.org?node_id=1207133

bliako has asked for the wisdom of the Perl Monks concerning the following question:

Esteemed Monks,

I have a question regarding the HTTP cookies of an LWP object. In particular I want to save them in three different formats (LWP, Netscape, Microsoft) after LWP fetches a page.

So far, I have told LWP to keep cookies as thus:
my $ua = LWP::UserAgent->new(); $ua->cookie_jar(HTTP::Cookies->new());
Then I tell it to save cookies:
Path::Tiny::path("cookies.LWP.txt")->spew(join("\n", $ua->cookie_jar() +->as_string));

(LWP uses what is called 'SetCookies3' cookies)

But I now need to save the same cookies in Netscape format too so that I can import it in Firefox. And also in Microsoft format for import in IE (Oh Lord, set a guard upon my lips! ... θου, Κύριε, φυλακήν τω στόματί μου).

I am wondering whether I can do it the way I dreamed last night in my sleep:
my $NC = HTTP::Cookies::Netscape->new($ua->cookie_jar()); my $MC = HTTP::Cookies::Microsoft->new($ua->cookie_jar()); Path::Tiny::path("cookies.Netscape.txt")->spew($NC->as_string); Path::Tiny::path("cookies.Microsoft.txt")->spew($MC->as_string);

Alas no. (HTTP::Cookies::Netscape also fails to read an LWP cookie file.)

Is there code out there who can convert LWPCookie->Netscape and LWPCookie->Microsoft?

brotherly regards,

Bliako