apatit
Advanced Member | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору Кхм. Тут продолжение темы есть. Похожая ситуация несколько, только тут еще и файл надо скачать (или как минимум, получить результат редиректа). В общем, нужно зарегиться на сайте eSellerate и оттуда скачать файл EST (точнее, получить абсолютную ссылку на файл). Вот код: Код: #!/usr/bin/perl -w use LWP::UserAgent; use HTTP::Request::Common qw(POST GET); use strict; use warnings; print "Content-type: text/html; charset=windows-1251\n\n"; $|++; my $ua = LWP::UserAgent->new(); #Get additional parameters sessioId and random my $uri = "https://affiliates.esellerate.net/affiliates/Login.aspx"; my $req = GET $uri; my $cont = $ua->request($req)->as_string; my $viewstate = $1 if $cont =~ m{name="__VIEWSTATE" value="(.*)" />}gim; #~ #Post the authorisation form - log into ShareIt $req = POST $uri, [LoginName => "login", Password => "password", __VIEWSTATE => "$viewstate", iLogin => "Login"]; $cont = $ua->request($req)->as_string; exit(); | В результате получается следующее: Код: <HTML> <HEAD> <title id="iPageTitle">Reminder</title> <META content="Microsoft Visual Studio.NET 7.0" name="GENERATOR"> <META content="Visual Basic 7.0" name="CODE_LANGUAGE"> <META content="JavaScript" name="vs_defaultClientScript"> <META content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema"> <LINK href="zStyles.css" type="text/css" rel="stylesheet"> </HEAD> <BODY bgColor="white"> <form name="Form1" method="post" action="LoginMessage.aspx" id="Form1"> <input type="hidden" name="__VIEWSTATE" value="dDw3NTI3MTAzODA7dDw7bDxpPDE+O2k8Mz47PjtsPHQ8cDxsPGlubmVyaHRtbDs+O2w8UmVtaW5kZXI7Pj47Oz47dDw7bDxpPDU+O2k8OT47aTwxMT47aTwxMz47PjtsPHQ8cDxwPGw8VGV4dDs+O2w8XDxmb250IGNvbG9yPXJlZFw+UmVtaW5kZXJcPC9mb250XD47Pj47Pjs7Pjt0PHA8bDxWaXNpYmxlOz47bDxvPHQ+Oz4+Ozs+O3Q8cDxwPGw8TmF2aWdhdGVVcmw7VmlzaWJsZTs+O2w8QXZhaWxhYmxlUHJvZHVjdHMuYXNweDtvPHQ+Oz4+Oz47Oz47dDw7bDxpPDE+Oz47bDx0PHA8cDxsPFRleHQ7PjtsPDA0Oz4+Oz47Oz47Pj47Pj47Pj47Pjuni5m5AjlWjbl5pYHwXuMFF0hn" /> <script language=JavaScript> function OpenHelpWindow( inNewURL ) {tNewWin = window.open(inNewURL, 'HelpWindow', 'toolbar=no,location=no,scrollbars=yes,resizable=yes,width=600,height=440');tNewWin.focus();}</script> <!-- TOP --> <!-- BANNER --> <TABLE width="100%" cellSpacing="0" cellPadding="0" border="0" id="NavTopTable"> <TR> <TD background="img/affiliate_banner_bg.gif"><A href="Default.aspx"><IMG height="65" src="img/affiliate_banner.gif" width="502" border="0"></A></TD> </TR> <TR> <TD><IMG height="10" src="img/spacer.gif" width="750"></TD> </TR> </TABLE> <!-- MIDDLE --> <TABLE cellSpacing="0" cellPadding="0" width="750" border="0"> <TR> <!-- Menu --> <TD class="MenuBorder" width="2"><IMG src="img/spacer.gif" width="2"></TD> <TD class="MenuBackground" vAlign="top" width="146"> <TABLE width="146" border="0" cellspacing="0" cellpadding="0" bordercolor="#9c0057" bgcolor="#d4dce2" rules="none"> <!-- MENU TOP --> <TR> <TD width="146" bgColor="#9c0057" height="2"><IMG height="2" src="img/spacer.gif" width="146"></TD> </TR> <!-- HOME --> <TR> <TD class="Menu" height="22"><B> <a href="home.aspx" class="Menu">Home</a></B></TD> </TR> <TR> <TD height="1" bgcolor="#9c0057"><IMG src="img/spacer.gif" width="1" height="1"></TD> </TR> <TR> <TD class="Menu" height="22"><B> <A href="Login.aspx" class="Menu">Login</A></B></TD> </TR> <!-- SIGN UP --> <TR> <TD height="1" bgcolor="#9c0057"><IMG src="img/spacer.gif" width="1" height="1"></TD> </TR> <TR> <TD class="Menu" height="22"><B> <A href="SignUp.aspx" class="Menu">Sign-up</A></B></TD> </TR> <!-- GETTING STARTED --> <TR> <TD height="1" bgcolor="#9c0057"><IMG src="img/spacer.gif" width="1" height="1"></TD> </TR> <TR> <TD class="Menu" height="22"><B> <A href="GettingStarted.aspx" class="Menu">Getting Started</A></B></TD> </TR> <!-- PRODUCT LIBRARY --> <TR> <TD height="1" bgcolor="#9c0057"><IMG src="img/spacer.gif" width="1" height="1"></TD> </TR> <TR> <TD class="Menu" height="22"><B> <A href="AvailableProducts.aspx" class="Menu">Available Products</A></B></TD> </TR> <!-- CONTACT ESELLERATE --> <TR> <TD height="1" bgcolor="#9c0057"><IMG src="img/spacer.gif" width="1" height="1"></TD> </TR> <TR> <TD class="Menu" height="22"><B> <A href="ContacteSellerate.aspx" class="Menu">Contact eSellerate</A></B></TD> </TR> <TR> <TD height="1" bgcolor="#9c0057"><IMG src="img/spacer.gif" width="1" height="1"></TD> </TR> </TABLE> </TD> <TD class="MenuBorder" width="2"><IMG src="img/spacer.gif" width="2"></TD> <TD width="10"><IMG height="10" src="img/spacer.gif" width="10"></TD> <!-- Content --> <TD class="Standard" vAlign="top" width="590"> <P><span id="iPageTitle2" class="PageTitle"><font color=red>Reminder</font></span> <HR width="590" SIZE="1"> <BR> <P></P> <P>You must complete the <a href="MyPaymentInfo.aspx">My Payment Information</a> section before eSellerate can pay you for your sales. If you prefer to enter this information later, you may click the link below.<BR> <BR> <a id="iContinue" href="AvailableProducts.aspx">Continue</a><BR> <IMG height="8" src="img/spacer.gif" width="5"> </P> </TD> </TR> </TABLE> <!-- BOTTOM --> <TABLE width="100%" border="0" cellspacing="0" cellpadding="2"> <TR> <TD class="SmallWhite" align="right" bgcolor="#9c0057"> Copyright 2000-<span id="NavBotCtl_ThisYear">04</span>, <A href="http://www.esellerate.net" class="SmallWhite" target="_blank"> eSellerate Inc.</A> | <A href="LegalInfo.aspx" tabindex="32767" class="SmallWhite"> Legal Information</A> </TD> </TR> </TABLE> </form> </BODY> </HTML> | Ситуация двоякая. Наличие Reminder'а говорит о том, что регистрация прошла успешно. С другой стороны, внешний вид меню, имеющего пункт "Login", говорит об обратном (обычно в случае успешной регистрации меню имеет более развернутый вид и точно не имеет пункта "Login"). Далее, при имеющемся списке программ мы получаем ссылку на страницу для скачивания файла. Код: $uri = "https://affiliates.esellerate.net/affiliates/ProductDetail.aspx?SSLIDC=9196109420&tab=2"; $req = GET $uri; $cont = $ua->request($req)->as_string; | Результат говорит о том, что регистрация все-таки не прошла , потому что вновь предлагают залогиниться. Если бы все было ОК, то была бы выведена ссылка на скачивание. В этом и трабл .
|