我正在使用“自动浏览”脚本。我的脚本应该能够下载某些页面,然后解析这些页面以找到某些值,从而生成输出。服务器也需要身份验证。
我已经能够使用 PHP 的 CURL lib 获取这些页面,包括身份验证部分,但问题是这些页面的内容是在 javascript 函数中生成的,所以在使用 CURL 函数下载它们后,大部分内容都丢失了,因为JS代码没有被执行。
所以,我需要的是JS执行后的DOM。我花了一些时间来找出最好的方法,但我不确定是否找到了。无论如何它还没有为我工作,所以......
我所做的是在我的 Linux 机器上安装 phantomjs,并尝试使用它来执行下载页面中的 JS 代码。因此,我使用 CURL 下载页面并将其保存为“test.html”文件,然后执行“phantomjs test.html”,但我得到的只是:
$ phantomjs test.html
undefined:1 SyntaxError: Parse error
它什么也没做,就像被绞死一样。
test.html 包含脚本标签中的 html 和 JS 代码,你知道,就像其他所有常见的带有 JS 的网页一样。
无论如何,为了确保 test.html 没有问题,我用 wget 下载了 google.com 的 index.html 页面,得到了相同的结果:
$ phantomjs index.html
undefined:1 SyntaxError: Parse error
所以我得出结论,我一定做错了什么......
欢迎任何帮助。:-)
最好的,