0
아래 코드를 참조하십시오.
두 개의 웹 페이지를 캡처하고 싶습니다.
phantomjs를 사용하여이 코드를 실행 한 후 웹 페이지 (www.baidu.com)의 스크린 샷을 하나만 얻었습니다.
웹 페이지가 phantomjs 싱글 톤입니까? 하나의 가상 공간에서 두 개의 웹 페이지를 열 수 있습니까?phantomjs : 웹 페이지 싱글 톤입니까?
var webpage1 = require('webpage').create();
webpage1.onLoadFinished = function() {
webpage1.render('1.png');
}
webpage1.open('http://www.google.com');
var webpage2 = require('webpage').create();
webpage2.onLoadFinished = function() {
webpage2.render('2.png');
}
webpage2.open('http://www.baidu.com');
UPDATE :
당신은 내가 스크립트의 끝을 지연
을 @Cybermaxs 감사합니다, 그것을 작동합니다. 두 개의 스크린 샷이 있습니다.
var webpage1 = require('webpage').create();
webpage1.onLoadFinished = function() {
webpage1.render('1.png');
}
webpage1.open('http://www.google.com.cn');
var webpage2 = require('webpage').create();
webpage2.onLoadFinished = function() {
webpage2.render('2.png');
}
webpage2.open('http://www.baidu.com');
setTimeout(function() {
console.log(webpage1.url);
console.log(webpage2.url);
phantom.exit(0);
}, 9000);
감사합니다. 스크립트의 끝 부분을 지연 시키므로 작동합니다. 나는 내 질문을 업데이트했다. – hellojinjie
그러나 나는 아직도 혼란 스럽다. 필자의 원저자 스크립트에서는 phantom.exit()를 호출하지 않았으므로 phantomjs는 스크립트가 끝날 때 종료되지 않으므로 phantomjs는 contiune을 실행하고 첫 번째 웹 페이지의 스크린 샷을 가져와야합니다. 두 번째 웹 페이지뿐만 아니라 – hellojinjie