Skip to main content.
home | support | download

Back to List Archive

RE: Good Excel parser

From: Bill Moseley <moseley(at)not-real.hank.org>
Date: Thu May 29 2003 - 00:45:14 GMT
On Wed, May 28, 2003 at 03:43:16PM -0700, Roubart Capcap wrote:
> 
> If I download the excel file and test it, I come up with this:
> 
> 
> [Bart]$ perl -I.. Filter.pm test adr03rates.xls
> Testing mode for Filter.pm
> 
> =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
> File: adr03rates.xls
> Content-type: application/excel
                
The filter is looking for:

  application/vnd.ms-excel

So in this case it looks like you mime.types file is converting .xls 
into a type that filter is not expecting.

> If I use the SWISH::Filter (with Spreadsheet::ParseExcel), it seems to
> try to parse it but with errors:
> 
> 19796 Warning - http://localhost/2003/adr03rates.xls: substr
>  outside of string at /usr/local/lib/perl5/site_perl/5.8.0/Spreadsheet/ParseExce
> l.pm line 1253.
> 
> 19780 Warning - http://localhost/2003/adr03rates.xls: Use of
>  uninitialized value in unpack at /usr/local/lib/perl5/site_perl/5.8.0/Spreadshe
> et/ParseExcel.pm line 1253.

> I am not sure if the ParseExcel module is causing the problem or not. 
> Please help.

Are you using a new version of Excel?  It may be that Microsoft changed 
their file format again and the tools have not caught up with it yet.

What I'd do at this point is look at the docs for 
Spreadsheet::ParseExcel and generate a simple Perl test case.  The 
"SYNOPSIS" will give an example.  Make sure you are not trying to parse 
something that is documented not to work (password protected?).  Then 
send your test case to the module's author.

If you can get a test case to work directly with the ParseExcel module 
then we can try and see why the Swish filter is not working.

Google might also show up others trying to do the same thing.


-- 
Bill Moseley
moseley@hank.org
Received on Thu May 29 00:45:22 2003