phantomJSエラー:Can only set Cookies for the current domain

1260 ワード

需要
一部のシーンではphantomJSを使用してページのダイナミックロードの情報を取得しなければならない場合がありますが、ログイン状態が必要なページに遭遇すると、ログインを迂回することはできません.cookiesをphantomJSに入れることができます.
エラーコード
#      
driver = webdriver.PhantomJS(executable_path='phantomjs.exe')
#   cookies  
cookie = {"SSOLoginState":"1488702265"}
    for key in cookie:
        c = {}
        c['name'] = key
        c['value'] = cookie[key]
        c['domain'] = 'example.com'
        c['page'] = '/'
        c['httponly'] = False
        c['secure'] = False
        driver.add_cookie(c)

エラーメッセージ
Can only set Cookies for the current domain...
....
...
Screenshot: available via screen

このドメイン名にクッキーを入れることはできませんが、ドメインをまたいでいる可能性があります.
公式サイトの例
phantomJS公式サイトの完全なcookies情報は次のとおりです.
{ 
  domain: 'example.com',
  expires: 'Sat Oct 11 2014 21:44:33 GMT+0200 (CEST)',
  expiry: 1476128618,
  httponly: false,
  name: 'cookieName',
  path: '/',
  secure: false,
  value: cookieValue
}

理由:
cookiesの中にはpageではなくpathがあるのか!!!またdomainの前に1つ追加する必要があります.例えばcom、正しいdomainは書くべきです
domain: '.jianshu.com'