当我使用python请求会话模块登录时,无法获取另一个页面

时间:2017-07-10 09:59:18

标签: python beautifulsoup request

我正在尝试使用python请求会话模块登录LinkedIn,但我无法访问其他页面,请帮助我。 我的代码就像这样

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,"lxml")

# 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'] = 'usename'
post['session_password'] = 'password'

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

notify_response = session.get('https://www.linkedin.com/company-
beta/3067/')
notify = BeautifulSoup(notify_response.text,"lxml")

print notify.title

1 个答案:

答案 0 :(得分:0)

嗯,希望我不是说错误的东西,但是几周前我不得不爬上来看看,很高兴看到了很多机器人。我几乎肯定这是你的问题(你应该尝试打印post_response的输出,你肯定会看到你在验证码页面或类似的东西)。

Plot twist :我通过运行selenium登录到linkedin,手动登录到linkedin并使用pickle将Cookie保存为文本文件。

然后,我没有使用登录表单,只是将cookie加载到selenium并刷新页面,tadam,登录。我认为这可以通过requests

完成