[Code] Buttonklick auf Website

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von Cyc0, 18. Mai 2011 .

  1. 18. Mai 2011
    Buttonklick auf Website

    Hallo,
    ich habe folgendes Problem:

    Auf einem kleinen Ubuntu-Server soll ein Skript laufen, dass automatisch auf einer bestimmten Website einen Button drückt.

    Ich habe versucht dies mit einem kleinen Perl-Skript und WWW:Mechanize zu realisieren:
    Code:
    #!/usr/bin/perl
    use strict;
    use WWW::Mechanize;
    my $mech = WWW::Mechanize->new();
    my $link = "http://link";
    $mech->get($link);
    $mech->click_button(name => "goactivate");
    $mech->submit();
    
    Dabei erhalte ich allerdings den Fehler "no form selected"...

    Der relevante Teil des Quelltextes der Webseite ist
    Code:
    <script type="text/javascript">
    <!--
     
     $(document).ready(function() {
     setTimeout("_insert()", 8000);
     });
     
     function _insert() {
     $('#actload').html('<form method="post" action="activate-ZGZjAGpmZmL2BN.html"><input type="submit" name="goactivate" value="Freischalten" class="std_button" /></form>');
     } 
    -->
    </script>
    
    Beim Nachforschen habe ich gelesen, dass Mechanize kein JavaScript unterstüzt.

    Hat jemand eine Idee wie ich es schaffen könnte den Button via Script zu klicken?
     
  2. 18. Mai 2011
    AW: Buttonklick auf Website

    Du könntest dir mit java oder php den source der seite holen(in php mit file_get_contents) und per regex die action aus der form parsen und dann einen post request darauf absetzten.

    Hier wird gezeigt wie man einen post request in php absenden kann.
    http://wezfurlong.org/blog/2006/nov/http-post-from-php-without-curl/
     
  3. 20. Mai 2011
    AW: Buttonklick auf Website

    hey,
    schon mal danke für den Tipp mit dem POST
    das sollte ja eigentlich auch mit Perl gehen
    hab mein Skript jetzt so umgebaut, dass ich den Link aus der Form action auslese
    und dann folgendermaßen aufrufe:
    Code:
    my $ua = new LWP::UserAgent;
    $ua->request(POST 'link', [ goactivate => 'Freischalten' ], Referer => 'link' );
    
    ich bekomme dabei zwar keinen Fehler, aber es funktioniert dennoch nicht...
    was mache ich falsch?
     
  4. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.