javascript事件的刮取结果
我正试图用Phantom.JS刮取一个页面 代码如下:javascript事件的刮取结果,javascript,phantomjs,Javascript,Phantomjs,我正试图用Phantom.JS刮取一个页面 代码如下: search = page.evaluate(function() { return '<div class="question">' + $('#id60questionText').text() + '</div>'; }); results = page.evaluate(function() { return $('#id78questionRegion').html();
search = page.evaluate(function() {
return '<div class="question">' + $('#id60questionText').text() + '</div>';
});
results = page.evaluate(function() {
return $('#id78questionRegion').html();
});
answer = page.evaluate(function() {
$('a[href="javascript:___gid_10(0)"]').trigger("click");
return $('body').html();
});
search=page.evaluate(函数(){
返回'+$('#id60questionText')。text()+'';
});
结果=page.evaluate(函数(){
返回$('id78questionRegion').html();
});
答案=page.evaluate(函数(){
$('a[href=“javascript:uuuuu gid_10(0)”)。触发器(“单击”);
返回$('body').html();
});
前两部分没有问题,但最后一部分没有问题。基本上,我想点击第一个答案,然后返回完成后显示的页面内容(并选择答案,但它在网站上运行得太快,我无法检查它在哪个选择器中)。无论如何,返回的html不包含答案,我猜我没有正确触发单击。有什么建议吗
非常感谢,你们都很棒,如果您查看
触发器的jQuery源代码,您会看到
elem[type]();
但不幸的是,HTMLElement.click
是非标准的,在PhantomJS中不可用。还有一个不使用jQuery的原因。看
PhantomJS没有打印错误消息吗?我本来希望看到类似于elem的东西。click不是一个函数
。否则,您可以尝试将其包装在一个try/catch块中,并控制台中。退出'ing错误。如果这仍然不能解决您的问题,您可以远程调试;谷歌搜索“phantomjs远程调试”