N.Bokov: Gerät-X

Hallo,

ich habe ein Gerät-X, das sich über eine Datei konfigurieren lässt. Das Gerät bietet eine HTML-GUI und über die kann man die Konfigurationsdatei hochladen. Ich kenne die IP-Nummer vom Gerät + die Struktur von der Konfigurationsdatei.

Ich möchte aber diese Web-GUI umgehen und die Konfigurationsdatei direkt über ein Skript aufs Gerät übetragen. Ist es möglich?

Danke.

  1. Moin!

    Ich möchte aber diese Web-GUI umgehen und die Konfigurationsdatei direkt über ein Skript aufs Gerät übetragen. Ist es möglich?

    Aber klar. Alles, was per HTTP möglich ist, ist sowohl im Browser als auch per Skript möglich - du mußt lediglich wissen, in welcher Form und an welche Adresse die Daten gehen sollen.

    Skriptgesteuertes HTTP geht beispielsweise mit den HTTP-Clientprogrammen curl oder wget.

    - Sven Rautenberg

    --
    My sssignature, my preciousssss!
    1. Aber klar. Alles, was per HTTP möglich ist, ist sowohl im Browser als auch per Skript möglich - du mußt lediglich wissen, in welcher Form und an welche Adresse die Daten gehen sollen.

      Also, wenn ich sowas habe:

      <form name="config" method="POST" action="config.htm">
      <input type="submit" name="id_nr566" value="&nbsp;Schreiben&nbsp;">

      Wie würde dann grob ein perl-Skript aussehen?

      Danke

      1. Hi,

        Wie würde dann grob ein perl-Skript aussehen?

        du nutzt das Modul LWP::UserAgent (ich hoffe, das ich den namen noch richtig im Kopf hab) und lässt damit das gleiche an den Browser senden, was beim "normalen" absenden im Browser auch gesendet wird.

        1. du nutzt das Modul LWP::UserAgent

          Ja, stimmt. Und wie kann ich dann die Konfigdatei weiter geben, wenn ich die 2 Felder habe:

          <form name="config" method="POST" action="config.htm">
          <input type="submit" name="id_nr566" value="&nbsp;Schreiben&nbsp;">

          So?

          8<-------------8<

          #!c:/perl/bin/Perl.exe

          use CGI::Carp "fatalsToBrowser";
          use strict;

          use LWP::UserAgent;

          my $ua = LWP::UserAgent->new();
          my $resp = $ua->post("http://192.168.0.248/config.htm", {"field-keywords" => "C:\Dokumente und Einstellungen\user\Desktop\config.txt"});

          my $inhalt = $resp->content;

          print <<HTML;
          Content-type: text/html

          <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
          <html xmlns="http://www.w3.org/1999/xhtml">

          <body>

          $inhalt

          </body>

          </html>

          HTML

          8<-------------8<

          1. Ja, stimmt. Und wie kann ich dann die Konfigdatei weiter geben, wenn ich die 2 Felder habe:

            Genauso, wie du die Daten per Post an den Server sendest, sendest du einen Wert
            submit=id_nr566 mit. Da ich die Syntax für LWP::UserAgent grad nicht im Kopf hab,
            kann ich dir aber nicht gneau sagen, wie du das machst.

            1. Da ich die Syntax für LWP::UserAgent grad nicht im Kopf hab,

              Schade, vielleicht weiß hier jemand?

              Danke Euch.

              1. Hallo,

                CPAN

                gruss

                --
                Swiss Army Chainsaw
                Terrorific!
                VI VI VI - the editor of the beast!
                1. CPAN

                  Da war ich schon. :-( Hielft wenieg...

                  1. Hallo,

                    Da war ich schon. :-( Hielft wenieg...

                    Lesen hätte geholfen!

                    "[..] This method will use the POST() function from HTTP::Request::Common to build the request. See HTTP::Request::Common for a details on how to pass form content and other advanced features."

                    gruss

                    --
                    Swiss Army Chainsaw
                    Terrorific!
                    VI VI VI - the editor of the beast!
                    1. Lesen hätte geholfen!

                      Damit kommme ich auch nicht weiter.

                      1. Damit kommme ich auch nicht weiter.

                        Dann beauftrage einen Programmierer mit dem Problem. Offensichtlich hast du keine Lust, selbst Zeit und Arbeit zu investieren, dann musst du halt Geld investieren.

                        Du hast mwehr Tips bekommen, als nötig, behauptest immer, es bringt dich nicht wieter, und das nach einer zeit, die eindeutig beweisst, das du gar nicht gelesen haben KANNST, weil so schnell kann niemand lesen, und verstehen gleich zweimal nicht.

                        1. Du hast mwehr Tips bekommen, als nötig...

                          Syntax ist mir nicht klar.

                          1. Syntax ist mir nicht klar.

                            Offensichtlich musst du erst noch lesen lernen, es gibt ne Menge Beispiele zum Thema.

                            Ich klink mich jetzt aus diesem Thread aus, da du entweder zu faul oder zu dumm bist, selbst was zu machen, sonst hättest du mindestens deine Versuche hier gepostet.

                            Vielleicht findest du noch nen Dummen, der dir die Arbeit macht. Ich mit Sicherheit nicht. Faulheit gehört nicht unterstützt.

                            1. sonst hättest du mindestens deine Versuche hier gepostet.

                              Bla-bla-bla... Schon mal oben gelesen?

              2. Hallo,

                Schade, vielleicht weiß hier jemand?

                Nur so ein Tipp:
                Vielleicht versuchst Du Dich etwas in die Materie zu vertiefen, bevor Du hier fast im Minutentakt einen Chat-ähnlichen Thread generierst.

                lwpcook  oder auch http://search.cpan.org/~gaas/libwww-perl-5.805/lwptut.podqtitle=lwptut können Dir eventuell helfen. Und wenn das nicht genug ist, kannst du ja mal alle relevanten Dokumente, die unter libwww zu finden sind durchsehen. Das sollte Dich in die Lage versetzen ein passendes Script zu schreiben.

                Viel Spaß noch beim lesen.

                Grüße
                  Klaus