2014-09-09 1 views
1

Je voulais juste d'un simple POST en utilisant LinkedinConnexion à linkedin

client = requests.Session() 
URL = 'https://www.linkedin.com/uas/login-submit' 
login_information = { 
    'session_key':'login_email_address', 
    'session_password':'password', 
} 

client.post(URL, data=login_information) 

Cependant, je reçois cela comme une réponse

Request Error 
We’re sorry, there was a problem with your request. Please make sure you have cookies enabled and try again. 

Or follow this link to return to the home page. 

Toute pensée?

+0

Le code a fonctionné pour moi sur Python 2.7.3. – Celeo

+0

im sur 2.7.2, comment puis-je passer à la version 2.7.3? –

+0

[Télécharger la page] (https://www.python.org/download)? Cela dépend de votre système d'exploitation, mais il y a des guides là-bas. – Celeo

Répondre

1

Je pense que ce n'est pas si simple de se connecter à LinkedIn avec un simple POST. Essayez ceci:

import requests 
from bs4 import BeautifulSoup 

# Get login form 
URL = 'https://www.linkedin.com/uas/login' 
session = requests.session() 
login_response = session.get('https://www.linkedin.com/uas/login') 
login = BeautifulSoup(login_response.text) 

# Get hidden form inputs 
inputs = login.find('form', {'name': 'login'}).findAll('input', {'type': ['hidden', 'submit']}) 

# Create POST data 
post = {input.get('name'): input.get('value') for input in inputs} 
post['session_key'] = 'username' 
post['session_password'] = 'password' 

# Post login 
post_response = session.post('https://www.linkedin.com/uas/login-submit', data=post) 

# Get home page 
home_response = session.get('http://www.linkedin.com/nhome') 
home = BeautifulSoup(home_response.text) 

Ceci est le code que j'ai essayé avant et cela a fonctionné. Dites-moi s'il y a un problème.

1

Je l'ai eu pour travailler. N'a pas obtenu un jeton csrf. Cela fonctionne

import requests 
from bs4 import BeautifulSoup 
from unidecode import unidecode 

client = requests.Session() 

HOMEPAGE_URL = 'https://www.linkedin.com' 
LOGIN_URL = 'https://www.linkedin.com/uas/login-submit' 

html = client.get(HOMEPAGE_URL).content 
soup = BeautifulSoup(html) 
csrf = soup.find(id="loginCsrfParam-login")['value'] 

# print soup.find(id="loginCsrfParam-login") 

login_information = { 
    'session_key':'username', 
    'session_password':'password', 
    'loginCsrfParam': csrf, 
} 

headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:31.0) Gecko/20100101 Firefox/31.0'} 

client.post(LOGIN_URL, headers=headers, data=login_information) 
Questions connexes