[Vienna-pm] $form-click() uund nix ??
Carl A. Schreiber
gooly at gmx.at
Wed Sep 27 08:04:59 PDT 2006
Einen schönen guten Abend,
ich meine, ich habe alles nach der Schrift gemacht - und werde trotzdem
nicht erhört :(
Das Objekt meiner Begierde ist mein Tel SPA941, dass ich mit Perl und
dessen Web-Zugriff zu einem Login und Logout bei den VoIP-Providern
bewegen möchte, auf das dann im Autostart-Ordner und so automatische
gemacht wird.
Es ist ja nur eiin kleines Progrämmchen, dessen Erfolg sich aber daran
ablesen lassen muss, dass sich der Zustand des Tel verändert, sichtbar
dadurch dass alles LED blicken, die Farben wechslen und so -- aber
nix is :(
Die versuchten Formen des ->click() (#-Zeilen) bringt nichts - hängt das
damit zusammen, dass das submit Feld keinen Namen hat?
Unten ist jetzt zuerst das Progrämmchen, danach dessen Ausdruck - wenn
auch verkürzt. Die Änderung der Felder gelingt, aber das submit danach
nicht. Wieso liefert dieses POST die Zeile aller Felder mit '&'?
Habe ich da etwas übesehen, denn vom Konquerer klappts klasse.
Danke schon mal,
Calli
#! /usr/bin/perl
#
use LWP::UserAgent;
use HTTP::Request::Common;
use HTML::Form;
our $v = 1;
$ua = LWP::UserAgent->new;
$ua->agent($MOZILLA);
my $res = $ua->request(GET 'http://10.10.10.77/admin/');
#print $res->content if $v;
my $R = 1; #(() =~/1|in|/i) ? 1 : 0; # 1 = Login, 0 = Logout
my $reff = $res->base;
my $nF = 1;# Index of Form that has to filled and clicked
my $form = HTML::Form->parse( $res->content, $res->base );
print "fillFORM: res:$res; R:$R; reff:$reff method:",
$form->method," No.Inputs:",(scalar $form->inputs),"\n" if $v;
foreach my $i ($form->inputs) {
# das sind die relevanten Felder: Line Enable(1) || Disable(0)
if ($i->name =~ /^47$|^62511$|^59439$/) {
printf "\t%10s %10s %s",$i->name,$i->type,$i->value;
$i->value( $R );
printf " => \t%10s %10s %s\n",$i->name,$i->type,$i->value;
} #else { print "\n" }
#if ($i->type =~/submit/i) {
# print "\n\nok, try to click.. \n";
# my $hmm = $i->click($form);
# print "\n",$hmm->content,"\n";
#}
}
$rett = $form->click;
print "\n\n#############\n\nDer POST-Request..(??)= ",
"alle Felder mit verbunden durch '&'\n\n",$rett->content if $v;
print "\n";
############### Ausdruck ############
fillFORM: res:HTTP::Response=HASH(0x84c9f2c); R:1;
reff:http://10.10.10.77/admin/ method:POST No.Inputs:182
47 option 0 => 47 option 1
62511 option 0 => 62511 option 1
59439 option 0 => 59439 option 1
#############
Der POST-Request..(??)= alle Felder mit verbunden durch '&'
30959=1&P30767=&29807=0&29743=10.10.10.77&29935=255.255.255.0&29871= ..
(usw)
More information about the Vienna-pm
mailing list