Pokaż wyniki 1 do 2 z 2

Temat: www:mechanize - windows

  1. #1
    Zarejestrowany
    Nov 2006
    Skąd
    Polska/Poland
    Postów
    1,191

    Domyślnie www:mechanize - windows

    Siemka,

    potrzebuję zrobić upload pliku z Windows na serwer www.
    Na Linuxie chodzi bez problemu,
    W Strawberry wywala mi:

    Kod:
    Can't call method "value" on an undefined value at
            D:/Strawberry/perl/vendor/lib/WWW/Mechanize.pm line 1442 (#1)
        (F) You used the syntax of a method call, but the slot filled by the
        object reference or package name contains an undefined value.  Something
        like this will reproduce the error:
    
            $BADREF = undef;
            process $BADREF 1,2,3;
            $BADREF->process(1,2,3);
    
    Uncaught exception from user code:
            Can't call method "value" on an undefined value at D:/Strawberry/perl/vendor/lib/WWW/Mechanize.pm line 1442
    .
            WWW::Mechanize::field(WWW::Mechanize=HASH(0x13bfd24), "login", "PM") called at C:\Documents and Settings\pm
    \Pulpit\workflow\serwus\serwus.pl line 23
    Kod php:
    .....
    my $username 'PM';
    .....
    $mech -> field ('login' => $username);
    ..... 
    I o co chodzi?
    I zastanawiam się czy w ActivePerl pójdzie..,

    pzdr

    EDIT:
    Poszło w ActivePerl ok, ale jak ktoś wie w czym rzecz to niech się podzieli
    Ostatnio edytowane przez markossx : 10-31-2014 - 08:54
    ***********
    * markossx *
    ***********

  2. #2
    Zarejestrowany
    Nov 2006
    Skąd
    Polska/Poland
    Postów
    1,191

    Domyślnie get_file_size

    Trochę nakodziłem:
    Kod php:
    use strict;
    use 
    warnings;
    use 
    diagnostics;
    use 
    WWW::Mechanize;

    my $login_url 'https://www.www.pl/admin/';
    my $username 'OLO';
    my $password 'RATUJ';
    my $mech WWW::Mechanize->newautocheck => );
       
    $mech->add_header('Accept-Encoding' => 'gzip, deflate');
       
    $mech->add_header('Cookie' => 'PHPSESSID=tof25gbgftc25jg0fj2cexxxxx');
       
    $mech->add_header('Connection' => 'keep-alive');
       
    $mech -> get($login_url);
       
    $mech -> form_name('loginForm');
       
    $mech -> field ('login' => $username);
       
    $mech -> field ('password' => $password);
       
    $mech->click_buttonvalue => 'Zaloguj' );
    # print $mech->content();

    $mech->post('https://www.www.pl/admin/export'
        
        
    'Content' => [
        
    ]);

    my $output $mech->content();
       
    open(my $fh'>''C:/output/ex1csv');
       print 
    $fh $output;
    close $fh;
    print 
    " ZROBIONE \n"
    Działa ok, ale jak sprawdzić po zalogowaniu (przed pobraniem):
    rozmiar pliku,
    ilość linii ?

    Mechanize razem z LWP, jakiś spider...
    Ostatnio edytowane przez markossx : 11-18-2014 - 20:20
    ***********
    * markossx *
    ***********

Zasady Postowania

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •  
Subskrybuj