Provided by: libhtml-copy-perl_1.31-1_all bug

NAME

       HTML::Copy - copy a HTML file without breaking links.

VERSION

       Version 1.31

SYMPOSIS

         use HTML::Copy;

         HTML::Copy->htmlcopy($source_path, $destination_path);

         # or

         $p = HTML::Copy->new($source_path);
         $p->copy_to($destination_path);

         # or

         open my $in, "<", $source_path;
         $p = HTML::Copy->new($in)
         $p->source_path($source_path);    # can be omitted,
                                           # when $source_path is in cwd.

         $p->destination_path($destination_path) # can be omitted,
                                                 # when $source_path is in cwd.
         open my $out, ">", $source_path;
         $p->copy_to($out);

DESCRIPTION

       This module is to copy a HTML file without beaking links in the file. This module is a sub
       class of HTML::Parser.

REQUIRED MODULES

       HTML::Parser

CLASS METHODS

   htmlcopy
           HTML::Copy->htmlcopy($source_path, $destination_path);

       Parse contents of $source_path, change links and write into $destination_path.

   parse_file
           $html_text = HTML::Copy->parse_file($source_path,
                                               $destination_path);

       Parse contents of $source_path and change links to copy into $destination_path. But don't
       make $destination_path. Just return modified HTML. The encoding of strings is converted
       into utf8.

CONSTRUCTOR METHODS

   new
           $p = HTML::Copy->new($source);

       Make an instance of this module with specifying a source of HTML.

       The argument $source can be a file path or a file handle. When a file handle is passed,
       you may need to indicate a file path of the passed file handle by the method
       "source_path". If calling "source_path" is omitted, it is assumed that the location of the
       file handle is the current working directory.

INSTANCE METHODS

   copy_to
           $p->copy_to($destination)

       Parse contents of $source given in new method, change links and write into $destination.

       The argument $destination can be a file path or a file handle. When $destination is a file
       handle, you may need to indicate the location of the file handle by a method
       "destination_path". "destination_path" must be called before calling "copy_to". When
       calling "destination_path" is omitted, it is assumed that the locaiton of the file handle
       is the current working directory.

   parse_to
           $p->parse_to($destination_path)

       Parse contents of $source_path given in new method, change links and return HTML contents
       to wirte $destination_path. Unlike copy_to, $destination_path will not created and just
       return modified HTML. The encoding of strings is converted into utf8.

ACCESSOR METHODS

   source_path
           $p->source_path
           $p->source_path($path)

       Get and set a source location. Usually source location is specified with the "new" method.
       When a file handle is passed to "new" and the location of the file handle is not the
       current working directory, you need to use this method.

   destination_path
           $p->destination_path
           $p->destination_path($path)

       Get and set a destination location. Usually destination location is specified with the
       "copy_to". When a file handle is passed to "copy_to" and the location of the file handle
       is not the current working directory, you need to use this method before "copy_to".

   enchoding
           $p->encoding;

       Get an encoding of a source HTML.

   io_layer
           $p->io_layer;
           $p->io_layer(':utf8');

       Get and set PerlIO layer to read the source path and to write the destination path.
       Usually it was automatically determined by $source_path's charset tag. If charset is not
       specified, Encode::Guess module will be used.

   encode_suspects
           @suspects = $p->encode_sustects;
           $p->encode_suspects(qw/shiftjis euc-jp/);

       Add suspects of text encoding to guess the text encoding of the source HTML. If the source
       HTML have charset tag, it is not required to add suspects.

   source_html
           $p->source_html;

       Obtain source HTML's contents

NOTE

       Cleanuped pathes should be given to HTML::Copy and it's instances. For example, a verbose
       path like '/aa/bb/../cc' may cause converting links wrongly. This is a limitaion of the
       URI module's rel method. To cleanup pathes, Cwd::realpath is useful.

AUTHOR

       Tetsuro KURITA <tkurita@mac.com>