2017-04-18 3 views
0

pythonで初心者です。オンライン投稿からウェブサイトにログインするのにエラーが発生しますが、エラーが発生します。ウェブサイトへのログインを実行するこのPythonコードを修正するには

はそれを修正するのに役立つと説明は、Amは以下のエラーで立ち往生してくれ

import requests 

with requests.Session() as c: 
    EMAIL = '[email protected]' 
    PASSWORD = '[email protected]' 
    URL = 'https://www.linkedin.com/' 
    c.get(URL) 
    token = c.cookies['CsrfParam'] 
    # This is the form data that the page sends when logging in 
    login_data = {loginCsrfParam:token, session_key:EMAIL, session_password:PASSWORD} 
    # Authenticate 
    r = c.post(URL, data=login_data) 
    # Try accessing a page that requires you to be logged in 
    r = c.get('https://www.linkedin.com/feed/') 
    print r.content 

を助けるください

C:\Python27>python website.py 
Traceback (most recent call last): 
    File "website.py", line 8, in <module> 
    token = c.cookies['CsrfParam'] 
    File "C:\Python27\lib\site-packages\requests\cookies.py", line 329, in __getitem__ 
    return self._find_no_duplicates(name) 
    File "C:\Python27\lib\site-packages\requests\cookies.py", line 400, in _find_no_duplicates 
    raise KeyError('name=%r, domain=%r, path=%r' % (name, domain, path)) 
KeyError: "name='CsrfParam', domain=None, path=None" 

答えて

0

あなたがエラーを取得している理由は、あなたが呼んでいるということです空のリストからの値。リストの最初の項目を呼び出すには、list [0]と言ってください。この場合、呼び出し元のリストは空ですので、最初の値は存在せず、したがってエラーです。

私はコードを実行しましたが、 'recaptcha-token'という@id値はありません。そのため、コードは空のリストを返しています。 recaptchaトークンが必要なのはサインアップだけですので、authenticity_tokenを作成せずにログインしようと提案します。

+0

こんにちは!私は外のトークンでそれを走らせた。エラーは表示されませんでしたが、ウェブページも開かれませんでした。このコードでWebページを開き、提供された資格情報でログインします。 –

+0

私はリクエストでかなりのバリエーションを試しましたが、それを動作させることはできません。私の経験から、セレンはアンチ・プログラミング・システムを丸くする傾向がありますので、この記事を見てみてください。https://www.quora.com/How-do-I-log-int-Quora-using-Python-since-they -dont-have-an-API。代わりに、Quoraモジュールがあります:https://pypi.python.org/pypi/quora/これはログインしないので、必要な機能がないかもしれません。申し訳ありませんが、私はもっと助けません。 – TLOwater

関連する問題