[英]How to send cookies with 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條目的列表。
我認為這給我的刮擦腳本帶來了一些錯誤。
你的意見? 謝謝。
編輯
我嘗試發出POST請求來下載文件。 我可以登錄該站點,瀏覽到幾個頁面,進入下載頁面 - 但是,當我發送請求時,我收到一條消息“錯誤:要注冊該站點,您必須啟用瀏覽器才能接受cookie。 “
這就是為什么它令人困惑 - 我可以登錄並瀏覽網站(所以我必須傳遞一些cookie)但我無法下載(所以我可能沒有這里的cookie ..)
啟動CasperJS以保存cookie(並在會話之間重用它們)時提供cookiejar。
命令行選項:
--cookies-file=/path/to/cookies.txt
在全:
$ casperjs --cookies-file=/path/to/cookies.text myscript.js
使用命令行選項:
casperjs --cookies-file=/path/cookies.text script.js
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.