如何在脚本/ CLI中分析javascript处理后的网页标记
How to analyze the markup of a web page after javascript processing within a script/from CLI?
我一直在研究在脚本内或从命令行分析javascript处理后的网页标记的标准实践,即没有任何浏览器?
这需要在Linux环境中进行。是否有"可安装的",将允许您传递HTML标记,包括javascript,它将返回标记后模拟一个标准的浏览器请求和所有javascript调用已经完成?
如果你能想到任何Perl模块,那将会更有帮助。
我一直在看https://developer.mozilla.org/en/SpiderMonkey和http://search.cpan.org/~mschilli/JavaScript-SpiderMonkey-0.12/SpiderMonkey.pm,但我不确定这是否允许我在一个完整的HTML文档中传递,并得到处理的版本与所有javascript DOM操作回来?
请告诉我。
更新,我明白了
我把它都弄明白了——这就是需要做的:
#!/usr/bin/perl
use WWW::Scripter;
$w = new WWW::Scripter;
$w->use_plugin('JavaScript');
$w->get('http://www.google.com');
print $w->content(),"'n";
你必须使用浏览器,一个像WWW::Scripter::Plugin::Javascript这样的新浏览器或者WWW::Mechanize::Firefox
也许解决方案可以是像PhantomJS这样的无头浏览器。不是perl模块,但对于前端测试和自动化非常实用。
相关文章:
- 如何处理javascript中的循环引用,类似于Excel提供迭代限制的方式
- 什么是处理JavaScript的最简单的网络抓取工具
- 你如何处理Javascript中Caesar密码的转变
- 以相同的形式处理javascript和php中下拉列表的操作
- 如何在函数调用时处理 javascript 中的变量
- 我可以在哪里协作处理JavaScript,类似于CodeHS
- 通过抛出setTimeout()来处理JavaScript异常的任何问题
- 如何处理JavaScript's GridView上的确认对话框's PageIndexChanging
- 处理JavaScript中的net::ERR_CONTENT_LENGTH_MISMATCH错误
- 如何处理 JavaScript 条件语句中的可为空的对象
- XML 到 JSON - 处理 JavaScript 中的 xml 命名空间和别名
- 处理 JavaScript 中不存在的变量
- Google V8如何处理javascript事件
- 如何在保持干燥的同时处理 javascript 中的条件回调
- 存储过程中的Mongodb处理 - JavaScript中的BSON到JSON
- 国际键盘如何处理 JavaScript 键盘事件
- 如何处理 javascript 中的嵌套函数
- 应该如何处理JavaScript
链接的返回值 - Ruby with Watir:处理 JavaScript 弹出窗口
- 使用数组处理 JavaScript 字符串 为什么它在控制台上打印“R”而不是“Z”