処理された1つのWebページから、エクスポートしたい新しいWebページにデータをコピーしようとしています。背景には、ページの一部を削り取り、元のページの一部を使用して新しいページを作成する必要があるということです。問題は、phantomJのincludeJs()メソッドとevaluate()メソッドがサンドボックス化されており、あるページから別のページにDOMをインポートする適切な方法がわからないようです。
次のようなテストコードがあります。ページは元のページで、新しいページがあります。
....
var title = page.evaluate(function() {
return title = document.getElementById('fooo').innerHTML;
});
console.log('page title:' + title);
//fs.write('c:/Temp/title.js', "var title = '" + title + "';", 'w');
var out = new WebPage;
out.viewportSize = page.viewportSize;
out.content = '<html><head></head><body><div id="wrapper"></div><p>done</p></body></html>';
out.includeJs('c:/Temp/title.js', function() {
var p = document.createElement('p');
p.appendChild(document.createTextNode(title));
document.getElementById('wrapper').appendChild(p);
});
...