Thread Ausgabe eines URLs parsen
(12 answers)
Opened by perl-snaks at 2012-04-19 10:58
Vielen Dank für Ihre Antwort.
Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 !C:\Perl\bin\Perl.exe [/c]print "Content-type:text/html\n\n"; use CGI; use CGI::Carp qw(fatalsToBrowser); use XML::Parser; my $cgi = new CGI; my $var = CGI:aram('ip'); my $url1 = 'https://www.xxyyzz.de/'; ### url my $uri = "$url1?ref=$var& save_report=yes" ; print "Location: $uri\n\n"; #### es gibt eine HTML-Seite mit einem Inputfeld nach der eingabe des Referenzes # wird in der URL # übermittelt und ganze URL an den Server des Hertsteller geleitet, so dass der server anhand des eingegeben Referenz # ein Report als XMl zur Verfügung stellt. Bis hier hin bekomme ich eine XML-Ausgabe. Ich will jetzt die Ausgabe des "print "Location: $uri\n\n";" in einem verzeichnis zwischen speichern: open(KIRSCHE,">>c:/Programme/Apache/cgi-bin/grab.xml"); ####XML Ausgabe soll in dieser Datei gespeichert select(KIRSCHE); print KIRSCHE $doc; select(STDOUT); close(KIRSCHE); DIe XMl datei "grab.xml" mittels XML::parser zu html umwandeln: my $zeiger = new XML::Parser (); ######die gespeicherte Datei parsen $zeiger->setHandlers ( Start => \&anfang, End => \&ende,Char=>\&inhalt ); $zeiger->parsefile ("grab.xml"); print "<html><head><body>"; sub inhalt { ($wert_des_zeigers,$inhalt)=@_; print " <table><td>$inhalt</td></table>"; } sub ende { %watnu2=("SCAN"=>"</table>","KEY"=> "</td>","IP"=>"</td>","OS"=>"</td>","NETBIOS_HOSTNAME"=>"</td></tr>"); ($wert_des_zeigers,$endtag) = @_; print "$watnu2{$endtag}"; } sub anfang { %watnu1=("SCAN"=>"</table>","KEY"=> "</td>","IP"=>"</td>","OS"=>"</td>","NETBIOS_HOSTNAME"=>"</td></tr>"); $wert_des_zeigers = shift; $starttag=shift; print $watnu1{$starttag}; print "\n"; } Vielen Dank im Voraus Last edited: 2012-04-23 17:09:32 +0200 (CEST) |