我在使用WWW的凭据代理时遇到问题:使用Mechanize来访问和Web抓取需要NTLM身份验证的站点。我在网上看到凭证代理需要4个参数:基础,领域,用户名和密码。我不确定要为基础或领域使用什么,所以这些例子会非常有用。当我运行我的代码时,我在$ url get的行上发现了未经授权的错误。任何帮助将不胜感激
#!/usr/bin/perl
use strict;
use warnings;
use WWW::Mechanize;
use HTML::TokeParser;
my $url= shift || "mywebsite.com";
my $agent = WWW::Mechanize->new( autocheck => 1 );
$agent->credentials ( "proxy:port", '', 'domain/username', 'password' );
$agent->proxy(['https', 'http', 'ftp'], 'proxy:port');
$agent->get( $url );
print $agent->content();
答案 0 :(得分:1)
有助于阅读您正在使用的软件的文档。 WWW :: Mechanize会覆盖credentials
method,因此它也只接受用户名和密码。这些最终会传递给Authen :: NTLM。