Как я могу опубликовать свое имя пользователя и пароль на веб-странице? - PullRequest
0 голосов
/ 12 августа 2010

Я хочу опубликовать свой пользователь и пароль с помощью Perl на веб-сайте.Источник страницы входа:

<div class="top">Sign In</div>
    <div class="row"><label for="username">Username:</label></div>
    <div class="row"><div id="login:usernameContainer">
        <input id="login:usernameContainer:username" type="text"
        name="login:usernameContainer:username" class="username" size="16" />
    </div></div>
    <div class="row"><label for="password">Password:</label></div>
    <div class="row"><div id="login:j_id598">
        <input id="login:j_id598:password" type="password"
        name="login:j_id598:password" value="" size="16" class="password" />
    </div></div>
    <div class="clearfix">
    <div class="row rememberme">
        <input id="login:rememberme" type="checkbox"
        name="login:rememberme" class="rememberme" />Remember Me
    </div>
    <div class="submit-button">
        <input type="image" src="/beta/style/shun/base/base/en/text/button/button-login.gif"
        name="login:j_id603" />
    </div>
</div>

Что я собираюсь сделать, чтобы опубликовать свой логин и пароль?

Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 13 августа 2010

См. http://search.cpan.org/dist/WWW-Mechanize/lib/WWW/Mechanize.pm для получения подробной информации о модуле, но вот замечание:

use strict; use warnings;
use WWW::Mechanize;
my $mech = WWW::Mechanize->new();
$mech->get( 'http://url.to/your/form' );
$mech->submit_form(
    form_number => 0,     # see if it's the first form, or change this
    fields      => {
        'login:usernameContainer:username'
            => 'username', # change to your user name
        'login:j_id598:password'
            => 'password', # change to your password
    }
);

Если он не работает для вас, или поля всегда имеют разные имена или тому подобное, попробуйте использовать $mech->find_link с регулярным выражением и использовать возвращаемые значения, чтобы изменить нужные поля, затем отправить форму.

надеюсь, это поможет

1 голос
/ 12 августа 2010

Вы используете соответствующие имена полей (вы можете найти их в опубликованном вами HTML) и заполняете значения формы для любого кода Perl, который вы используете для публикации на странице (WWW :: Mechanize или для чего-либо еще)

...