我是phantomJs的新手,负责自动从网站上抓取一些数据。要这样做,我必须登录,导航到网站上的搜索页面,搜索并抓取来自Ajax查询的结果。这一切都在我的本地机器(带有Lampp的ubuntu操作系统)上变得很好但是当我将我的代码移动到我们的开发服务器(运行nginx的centOS机器)时,我开始得到:“refrenceError:$ not defined”在我对jquery的调用上。所以我已经将jquery添加到我的目录并尝试:
page.onLoadFinished = function() {
page.injectJs('jquery-1.10.2.min.js'), function(){
$.noConflict();
};
loadInProgress = false;
};
以及
page.injectJs('jquery-1.10.2.min.js'), function(){
$.noConflict();
//DO SOMETHING WITH $ HERE
};
但是现在搜索结果最初是一个漂亮的页面,其中包含我可以导航的表格,转而使用<pre></pre>
元素,只有一页结果,没有任何按钮。
答案 0 :(得分:0)
jQuery被注入页面上下文,而不是幻像上下文。使用page.injectJs()
时,只能通过page.evaluate()
访问jQuery。