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
#!C:\Perl\bin\Perl.exe use strict; use CGI; use CGI::Carp qw(fatalsToBrowser); use XML::Twig; my $cgi = new CGI; my $var = CGI::param('Ref'); my $url = 'https://XYZ.de/msp/ '; my $link = "$url?Ref=$var&save_report=yes" ; print "Location: $link\n\n"; my $twig = XML::Twig->new->parseurl("https://www.google.de"); my $summary = $twig->first_elt( 'summary'); print $summary->text, "\n";
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
#!C:\Perl\bin\Perl.exe print "Content-type:text/html\n\n"; use CGI; use CGI::Carp qw(fatalsToBrowser); use LWP::Simple; use XML::Simple; use XML::Parser; use XML::LibXML; my $cgi = new CGI; my $var = CGI:aram('ip'); my $url1 = 'https://www.xxyyzz.de/'; ### url my $uri = "$url1?ref=$var& save_report=yes" ; #### 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. print "Location: $uri\n\n"; 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); 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"; }
Quote
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"; }
QuoteIch will jetzt die Ausgabe des "print "Location: $uri\n\n";" in einem verzeichnis zwischen speichern:
1 2 3 4 5
use XML::Parser; my $parser = new XML::Parser(Style => 'Debug'); $parser->parsefile('test.xml'); # aus datei $parser->parse($xml); # direkt aus variable
Quotevielen Dank für die ausführliche Antwort.
Ich hab...