HTML::Display - HTML zum lokalen Browser senden
Veröffentlicht von Thomas Fahle am (Permalink)
Dank HTML::Display von Max Maischein lassen sich einzelne HTML-Seiten ganz einfach von Perl aus zum Browser schicken und in diesem anzeigen.
Extrem praktisch, wenn man z.B. einen dynamischen generierten Report als HTML-Datei speichern und diesen gleich im lokalen Browser anzeigen lassen möchte. Fast schon eine Fernsteuerung für Browser.
HTML::Display funktioniert auf den gängigen Betriebssystemem mit den meisten Browsern, wie z.B. Internet Explorer oder Firefox. Bisher habe ich es allerdings nur mit Windows XP SP3 und Ubuntu 8.04 ausprobiert.
Beispiel: lokale HTML-Datei zum Browser des Users senden
#!/usr/bin/perl use strict; use warnings; use HTML::Display; my $browser = HTML::Display->new() or die $!; warn "# Displaying HTML using " . ref $browser; my $location = "index.html"; display( file => $location ) ;
Die dazugehörige HTML-Datei index.html im selben Verzeichnis.
<html> <head> <title> HTML-Display rocks </title> </head> <body> <h1>HTML-Display rocks</h1> <p> Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. </p> <p> Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. </p> </body> </html>
Beispiel: Webseite zum Browser des Users senden
Dazu wird zunächst die Website mit LWP::Simple geholt und dann an HTML::Display weitergereicht.
#!/usr/bin/perl use strict; use warnings; use HTML::Display; use LWP::Simple; my $browser = HTML::Display->new(); warn "# Displaying HTML using " . ref $browser; my $location = "https://perl-howto.github.io/"; my $html = get $location; display( html => $html, location => $location ) ;