Подтвердить что ты не робот

Как отправить файлы cookie с помощью CasperJS

Я думаю, что каждый запрос, который я отправляю, отправляется без файлов cookie.

Когда я слушаю событие onResourceRequested следующим образом:

this.page.onResourceRequested = function(request) {
    utils.dump(request);
};

И каждый запрос имеет ту же форму заголовков:

"headers": [
    {
        "name": "User-Agent",
        "value": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36"
    },
    {
        "name": "Accept",
        "value": "text/css,*/*;q=0.1"
    },
    {
        "name": "Referer",
        "value": "https://some_site.com/page"
    }
],

Я никогда не получаю заголовок с файлами cookie, которые должны быть там.

Когда я пытаюсь посмотреть файлы cookie - я запускаю это:

utils.dump(this.page.cookies);

Я получаю список многих файлов cookie.

Я думаю, что это дало мне некоторые ошибки в моем выскабливании script.

ваши мысли? спасибо.

ИЗМЕНИТЬ

Я пытаюсь сделать запрос POST для загрузки файла. Я могу зайти на сайт, перейти на несколько страниц, перейти на страницу загрузки, но затем, когда я отправлю запрос, я получаю сообщение "Ошибка: для регистрации на сайте вам необходимо разрешить браузеру принимать файлы cookie."

Вот почему это сбивает с толку - я могу войти в систему и просмотреть сайт (поэтому у меня должно быть несколько файлов cookie), но я не могу загрузить (так что у меня может не быть cookie здесь..)

4b9b3361

Ответ 1

Предоставляйте cookiejar при запуске CasperJS для сохранения файлов cookie (и повторного использования их между сеансами).

Параметр командной строки:

--cookies-file=/path/to/cookies.txt

В полном объеме:

$ casperjs --cookies-file=/path/to/cookies.text myscript.js 

Ответ 2

Используйте параметр командной строки:

casperjs --cookies-file=/path/cookies.text script.js