저는 Perl을 처음 접했고 일부 프로젝트를 자동화하려고 노력하면서 배우고 있습니다. 지금까지 그 재미는 많이있었습니다.어떻게 WWW :: Mechanize를 사용하고 디버그합니까?
고객 용 보고서를 생성하려고합니다. 내가 액세스 할 수있는 웹 페이지에서이 보고서를 얻을 수 있습니다. 먼저 내 사용자 이름, 암호로 양식을 작성하고 드롭 다운 목록에서 서버를 선택하고 로그인해야합니다. 두 번째로 보고서 섹션에 대한 링크를 클릭해야합니다. 세 번째로 보고서를 작성할 양식을 작성해야합니다. 여기
내가 지금까지 쓴 것입니다 : 나는이 후에 내가 출력을 덤프 무엇을보고 내가 보라 동안 나는 첫 번째 로그인 페이지의 코드를 참조 이유를 이해하지만, 그나마my $mech = WWW::Mechanize->new();
my $url = 'http://X.X.X.X/Console/login/login.aspx';
$mech->get($url);
$mech->submit_form(
form_number => 1,
fields =>{
'ctl00$ctl00$cphVeriCentre$cphLogin$txtUser' => 'someone',
'ctl00$ctl00$cphVeriCentre$cphLogin$txtPW' => '12345',
'ctl00$ctl00$cphVeriCentre$cphLogin$ddlServers' => 'Live',
button => 'Sign-In'
},
);
die unless ($mech->success);
$mech->dump_forms();
성공적인 로그인 후 다음 페이지에 도달 했어야합니다.
저와 로그인 시도에 영향을 줄 수있는 쿠키가있을 수 있습니까?
다른 사람은 내가 잘못하고 있습니까?
당신은 당신이 알고있는 물건을 기계화 할 수 Yaniv에게
Thanx Manni. 방화범이 끌리지 만 정확히 무엇을 찾아야할지 모르겠습니다. 쿠키는 어디에서 확인합니까? 나는 모든 매개를 보았고 숨은 것이 없다. –
"Net"이라는 탭을보십시오. 쿠키를 포함하여 서버가 보낸 모든 HTTP 헤더를 표시합니다. GET HTTP : //XXXX/Console/login/login.aspx 수락 - 인코딩 : – innaM
이 난 내 코드에서 가져온 것입니다 GZIP, X-GZIP, 사용자 에이전트를 수축 : 직접 libwww - 펄/5.822 (콘텐츠 없음) HTTP/1.1 200 OK 캐시 제어 : 개인 연결 : 가까운 날짜 : 2009년 (월) 6월 8일 그리니치 표준시 15시 08분 32초 서버 : 마이크로 소프트 IIS/6.0 콘텐츠 길이 : 14,720 콘텐츠 - 유형 : text/html; charset = utf-8 클라이언트 - 날짜 : 2009 년 6 월 8 일 월요일 15:08:32 GMT 클라이언트 - 피어 : X.X.X.X : 80 클라이언트 - 응답 - 번호 : 1 –