in reply to Re^2: Extract CSS + JS + Image URLs from a HTML page?
in thread Extract CSS + JS + Image URLs from a HTML page?

It turns out that get_absolute_url takes two arguments, the first is the page the relative URL was found on and the second is the ( possibly ) relative URL.

This should work:
while( $html =~ m/\<script .*? src=\"(.+?)\Q.js"><\/script>\E/gis +){ my $js_url = $1; if ($js_url !~ /^https?:\/\//) { $js_url = HTML::Miner::get_absolute_url($url, $js_url); } push( @result_arr, "$js_url.js" ); } return \@result_arr;

I just posted HERE about the HTML::Miner V0.05 that I uploaded which has the option to pull out CSS ans JS. It also provides for relative URLs.

Finally it may not matter here but if there is a non-css <link /> or a file like 'blah.js?something' then this kind of RegEx might fail, I used:

$html =~ m/(<link [^<]*?href=\"([^\"]+?\.css[^"]*?)\")/gis $html =~ m/(<script [^<]*?src=\"([^\"]+?\.js[^"]*?)\")/gis

Replies are listed 'Best First'.
Re^4: Extract CSS + JS + Image URLs from a HTML page?
by ultranerds (Hermit) on Jan 31, 2011 at 16:51 UTC
    Hi,

    Thanks - will have a play with that now :)

    Cheers!

    Andy