我在使用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();
解决方法
它有助于阅读您正在使用的软件的文档. WWW :: Mechanize会覆盖
credentials
method,因此它也只接受用户名和密码.这些最终传递给Authen :: NTLM.