http://www.perlmonks.org?node_id=1031465


in reply to how to extract iframes from text

Against all recommendations:

use strict; use warnings; use Data::Dumper; my $string = <<'IFRAME'; <p>No one's telling the truth anymore, and that makes the numbers susp +ect.</p>\n<p><iframe width=\"480\" height=\"360\" src=\"http://localh +ost:8000/embed/static/clips/2012/12/17/28210/test-rush\" allowfullscr +een=\"\" frameborder=\"0\" scrolling=\"no\"></iframe></p>\n<p>Instead + of addressing the fact that some text</p>\n<p><iframe width=\"480\" +height=\"360\" src=\"http://localhost:8000/embed//static/video/2012/0 +9/07/fnc-ff-20120907-doocytaxes\" allowfullscreen=\"\" frameborder=\" +0\" scrolling=\"no\"></iframe></p>\n<p>The very first example AP cite +s was already corrected.some text ....Reacting to recent <a href="/bl +og/2013/04/17/major-errors-undermine-key-argument-for-austeri">resear +ch</a> that has questions.</p>\n<p><iframe width=\"480\" height=\"360 +\" src=\"http://localhost:8000/embed/static/clips/2013/04/29/29939/fn +c-an-20130429-hemmermooredebtgdp\" allowfullscreen=\"\" frameborder=\ +"0\" scrolling=\"no\"></iframe></p>\n Arriving at such a conclusion r +equires not only obscuring the importance in pushing global austerity + <a href="/static/images/item/gdp-components.jpg">strong measures</a> + of too little spending. IFRAME my @iframe; for my $found ($string =~ /<iframe (.*?)<\/iframe>/gi ) { push @iframe, {}; while($found =~ /(.*?)=(.*?)( |>)/g) { $iframe[-1]->{$1} = $2; } } print Dumper( \@iframe );

Replies are listed 'Best First'.
Re^2: how to extract iframes from text
by Anonymous Monk on Apr 30, 2013 at 21:18 UTC
    found what i wanted:

    my $collection = Mojo::DOM->new($args->{'body'})->find('iframe'); my @links; my $cpt = 0; foreach (@$collection) { $links[$cpt] = $_->{src}; print STDERR Dumper($_->{src}); # access elements of iframe with -> $cpt++; }
    thanks you u'r help