Drupal サイトの 2 つの Web ページからタイトル タグ テキストを取得しようとしています。ナイトメアを使いたい。
これまでの私のコードは次のとおりです。
// get the <title> text from inside the Drupal site
var Nightmare = require('nightmare');
var user = 'foobar@example.com';
var pass = 'foobar';
new Nightmare()
.goto('http://example.com/user')
.type('#edit-name', user)
.type('#edit-pass', pass)
.click('.searchsubmit')
.wait()
.evaluate(function () {
return document.getElementsByTagName("TITLE")[0];
}, function (res) {
console.log('Homepage title: '+res.text);
})
.run(function(err, nightmare){
console.log('Done1.');
// step 2
nightmare
.goto('http://example.com/admin')
.wait()
.evaluate(function () {
return document.getElementsByTagName("TITLE")[0];
}, function (res) {
console.log('Admin page title: '+res.text);
})
.run(function(err, nightmare){
console.log('Done2.');
})
;
})
;
node app.jsを使用してこれを実行すると、最初のページに正常にログインできます。残念ながら、2 番目のページを開こうとすると、2 番目のページ呼び出し ( http://example.com/admin ) でアクセスが拒否されます。セッションは 2 番目の「goto」コマンドに引き継がれません。
同じ nightmarejs セッションで多くのページを開くにはどうすればよいですか?