Rob Dixon wrote: > Mathew Snyder wrote: >> Rob Dixon wrote: >>> Mathew Snyder wrote: >>>> Mathew Snyder wrote: >>>>> I can't seem to get this working. Every time I try to run it >>>>> segfaults on me. >>>>> I've removed it from my code and reverted to the stage I was at >>>>> before I added >>>>> it and my script worked exactly as it did before I put it in. I've >>>>> installed it >>>>> via both cpan and yum. I've tried running it on a SuSE box and two >>>>> Fedora Core >>>>> 5 boxes. I get the same result both times. >>>>> >>>>> Does anyone know if this is a buggy module? Version is 1.883-1 >>>>> >>>>> Mathew >>>>> >>>> I looked over the doc for this module. It looks like the parse() > method >>>> requires one argument which is a list of email addresses to look for. >>>> The way I >>>> have it set up I think I may be passing the source of an entire web >>>> page to it. >>> OK it seems to dislike newlines in the content it's parsing. Make > sure this >>> works for you and, if so, you can apply the same fix to your own data. >>> In the >>> meantime I shall make some time to find the problem in the module (it >>> just hangs >>> on my machine). >>> >>> Rob >>> >>> >>> use strict; >>> use warnings; >>> >>> use LWP::Simple; >>> use Email::Address; >>> >>> my $data = get >>> 'http://search.cpan.org/~rjbs/Email-Address-1.884/lib/Email/Address.pm'; >>> $data =~ s/\s+/ /g; >>> >>> my @addrs = Email::Address->parse($data); >>> >>> print $_->address, "\n" foreach @addrs; >>> >>> >> >> This is the meat of what I have. It looks like it should work exactly > as you >> have only a bit more explicitly. All it does is return me to the > prompt. I >> know there should be at least 100 emails in the text I'm parsing. In > fact, I've >> figured out how to do this with HTML::TokeParser and am getting > several hits. I >> just need to figure out how to eliminate things I don't want. >> >> my $agent = WWW::Mechanize->new(); >> $agent->get('https://rt.ops.servervault.com/'); >> >> $agent->submit_form( >> form_name => 'login', >> fields => { >> 'user' => $user, >> 'pass' => $pass, >> } >> ); >> >> $agent->follow_link(text => "Tickets"); >> >> $agent->submit_form( >> form_name => 'BuildQuery', >> fields => { >> 'ValueOfStatus' => $status, >> 'ValueOfActor' => $user, >> 'ValueOfQueue' => $queue, >> }, >> button => 'DoSearch' >> ); >> >> $agent =~ s/\s+/ /g; >> my @emails = Email::Address->parse($agent); >> >> foreach my $email (@emails){ >> print $email; >> }; >> >> >> This is an example of the text I'm parsing: > > [snip] > > Look at the code below. Is this what you get? > > Rob > > > use strict; > use warnings; > > use Email::Address; > > my $data = q| > <tr class="oddline" ><td class="collection-as-table" > <b><a > href="/Ticket/Display.html?id=52549">52549</a></b></td><td > class="collection-as-table" ><b><a > href="/Ticket/Display.html?id=52549">***POSSIBLE SPAM*** Of fight a > implicit</a></b></td><td class="collection-as-table" >open</td><td > class="collection-as-table" >Security</td><td class="collection-as-table" >> >msnyder</td><td class="collection-as-table" >62</td></tr><tr > class="oddline" >> ><td class="collection-as-table" ></td><td class="collection-as-table" >> ><small>[EMAIL PROTECTED]</small></td><td > class="collection-as-table" >> ><small>13 hours ago</small></td><td class="collection-as-table" >> ><small></small></td><td class="collection-as-table" ><small>13 hours > ago</small></td><td class="collection-as-table" ><small>0</small></td></tr> > |; > > my @addrs = Email::Address->parse($data); > > print $_->address, "\n" foreach @addrs; > > **OUTPUT** > > [EMAIL PROTECTED] > >
Yes, that is exactly what I get. Mathew -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>