use*_*747 12 html javascript perl screen-scraping
有一个网站我试图从Perl中提取信息,但我需要的页面部分是使用javascript生成的,所以你在源代码中看到的是:
<div id="results"></div>
Run Code Online (Sandbox Code Playgroud)
我需要以某种方式提取该div的内容并使用Perl/proxies/whatever将其保存到文件中.例如,我想保存的信息将是
document.getElementById('results').innerHTML;
Run Code Online (Sandbox Code Playgroud)
我不确定这是否可能,或者是否有人有任何想法或方法来做到这一点.我正在使用lynx源转储到其他页面,但由于我不能直接屏幕刮这个页面我来这里询问它!
如果有人有兴趣,页面是http://downloadcenter.trendmicro.com/index.php?clk=left_nav&clkval=pattern_file®s=NABU,我试图得到的信息是关于ConsumerOPR的行
fri*_*edo 14
您需要对Javascript正在执行的操作进行反向工程.是否触发了AJAX请求来填充<div>?如果是这样,使用Firebug嗅探请求应该很容易,然后使用LWP :: UserAgent或WWW :: Mechanize复制它以获取信息.
如果Javascript只是在进行纯DOM操作,那么这意味着数据必须存在于页面中的其他位置或Javascript中.因此,弄清楚它来自何处并抓住它.
最后,如果这些选项都不合适,您可能需要使用真正的浏览器来完成它.有一些选项可以自动执行浏览器行为,例如WWW :: Mechanize :: Firefox或Win32 :: IE :: Mechanize.