2017-02-02 6 views

ответ

3

Вот пример того, как вы настроили сеанс с некоторыми файлами cookie, сохраненными в предыдущих сеансах.

// create a promise for retrieving cookies 
function getCookies(url) { 
    return new Promise(function (resolve) { 
    Nightmare() 
     .goto(url) 
     .cookies.get() // get the cookies 
     .end() 
     .then(resolve) 
    }); 
} 

var COOKIES; 
getCookies(url).then(function (cookies) { 
    // save your cookies somewhere... 

    // you could save them in the file system (with NodeJs) 
    require('fs').writeFileSync(
    'cookies.json', 
    JSON.stringify(cookies) 
); 

    // or you could set a global variable 
    COOKIES = cookies; 
}) 

// and now each time you want to use these cookies 
// you would simply set them before each session 
function google() { 
    return new Promise(function (resolve) { 
    Nightmare() 
     .goto('about:blank') // create your session by going to a blank page 
     .cookies.set(COOKIES) // or .cookies.set(require('fs').readFileSync('cookies.json')) 
     .goto('http://google.com') 
     // do your thing with the new cookies.. 
     .end() 
     .then(resolve) 
    }) 
} 
+0

'cookie.set (COOKIES)' не работает, я полагаю, поскольку его объект или куки, а не один куки-файл, нужно петли вправо? – 3zzy

 Смежные вопросы

  • Нет связанных вопросов^_^