I do not understand the implication of your comment "That way your code will run without many of the SSL-specific dependencies."
So, LWP::UserAgent is there to give you a client for accessing web resources which may be reached either via HTTP or HTTPS. The latter requires SSL (or TLS) and those require lots of extra code in the form of crypto libraries and so forth. That's what your error message is talking about. If the only web resources you are trying to access are over HTTP then you don't need those extra libraries, modules and so on. Note that I'm grossly simplifying here to keep it understandable.
However, while the sample code you provided lists only an HTTP URL, mr_ron has pointed out that this merely redirects to an HTTPS URL and therefore you do in fact need all the extra code in order to get to the end resource which requires HTTPS. Still with us?
Now, here's some sample code using the real, end-point URL explicitly:
#!/usr/bin/env perl
use strict;
use warnings;
use LWP::UserAgent;
my $url = 'https://www.bbc.co.uk/radio4/programmes/schedules/fm/2015/1
+0/13';
my $ua = LWP::UserAgent->new ();
my $res = $ua->get( $url );
my $html = $res->content;
print substr ($html, 0, 256) . "...\n";
which produces this output:
$ perl getr4.pl
<!DOCTYPE html>
<html class="b-header--black--white b-footer--black--white " lang="en-
+GB">
<head>
<meta charset="UTF-8">
<title>BBC Radio 4 FM - Schedules, Tuesday 13 October 2015</ti
+tle>
<link rel="icon" href="https://www.bbc.c...
$
This is using perl 5.20.3 and LWP::UserAgent 6.15, Mozilla::CA 20141217, LWP::Protocol::https 6.06, There are alternatives, but you can start with these. Try installing suitably recent versions of these modules using the documentation you have already read. You may need to install other dependencies too. Good luck.
|