Ich bin mit dem folgenden Code, mit dem folgenden Ausschnitt:WWW :: Mechanize SSL ignoriert
my $ mech = WWW :: Mechanize-> new ('ssl_opts' => { 'verify_hostname' => 0});
die folgenden Fehler noch geworfen wird:
Fehler Geting https://www.1031exchangeinc.com/: Es kann keine Verbindung zu www.1031exchangeinc.com:443 (SSL verbindet Versuch fehlgeschlagen Fehler: 14077410: SSL-Routinen: SSL23_GET_SERVER_HELLO: SSLv3 Alarm Handshake-Fehler) bei crawl.pl Zeile 29.
Ich möchte den SSL-Handshake ignorieren.
#!/usr/bin/perl
use Modern::Perl;
use WWW::Mechanize;
use IO::Socket::SSL;
my $root = 'https://www.1031exchangeinc.com/';
my $domain = 'https://www.1031exchangeinc.com';
#my $mech = WWW::Mechanize->new;
my $mech = WWW::Mechanize->new('ssl_opts' => { 'verify_hostname' => 0 });
sub visit {
my $url = shift;
my $indent = shift || 0;
my $visited = shift || {};
my $tab = ' ' x $indent;
# Already seen that.
return if $visited->{$url}++;
# Leaves domain.
if ($url !~ /^$domain/) {
say $tab, "-> $url";
return;
}
# Not seen yet.
say $tab, "- $url ";
$mech->get($url);
visit($_, $indent+2, $visited) for
map {$_->url_abs} $mech->links;
}
visit($root);