Web scraping Python请求会话未启用Cookie

Web scraping Python请求会话未启用Cookie,web-scraping,beautifulsoup,python-requests,setcookie,response-headers,Web Scraping,Beautifulsoup,Python Requests,Setcookie,Response Headers,我正在尝试通过请求模块登录。我尝试了GET和POST两种方法,但我总是得到下面的回应 错误。您的浏览器未启用Cookie。没有cookie支持,此登录页将无法运行 这是我正在使用的脚本。任何帮助都将不胜感激 import requests from bs4 import BeautifulSoup S = requests.session() headers = { 'Content-Type': 'application/xhtml+xml', 'Access-Control

我正在尝试通过请求模块登录。我尝试了GET和POST两种方法,但我总是得到下面的回应

错误。您的浏览器未启用Cookie。没有cookie支持,此登录页将无法运行

这是我正在使用的脚本。任何帮助都将不胜感激

import requests
from bs4 import BeautifulSoup

S = requests.session()
headers = {
    'Content-Type': 'application/xhtml+xml',
    'Access-Control-Allow-Origin': '*',
    'Access-Control-Allow-Methods': 'GET, POST,OPTIONS',
    'Access-Control-Allow-Headers': '*',
    'Access-Control--Max-Age': '86400',
    'User-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.87 Safari/537.36'
}

url = 'https://idp.maxebrd.safemls.net/idp/Authn/UserPassword'
response = S.get(url, headers=headers)
soup = BeautifulSoup(response.content, 'html.parser')
print(soup.prettify())

问题似乎在于Javascript支持,在第一次进入时查看源代码,我们看到:

SafeMLS®;错误 如果isCookieEnabled==false{ alertError。您的浏览器未启用cookie。如果没有cookie支持,此登录页将无法运行。; document.location.href=/idp/nocookies.jsp; }否则{ document.location.href=https://maxebrdi.paragonrels.com/; } 由于请求没有Javascript,我们必须手动应用页面正确加载所需的任何内容。 我们看到它将我们重定向到,这可能为我们在登录页面上设置了正确的cookies。幸运的是,requests.Session会这样做,并且默认情况下会为我们重定向

导入请求 标题={ 接受:*/*, 升级不安全的请求:1, 用户代理:Mozilla/5.0 Windows NT 6.1;rv:60.0 Gecko/20100101 Firefox/60.0 } 带请求。会话作为会话: 用户名=用户名 密码=密码 数据={ j_用户名:用户名, 密码:密码, j_密码:密码, j_logintype:sso似乎是恒定的 } 第一套饼干 一场gethttps://maxebrdi.paragonrels.com/,headers=headers 然后登录 结果=会话。posthttps://idp.maxebrd.safemls.net/idp/Authn/UserPassword,标题=标题,数据=数据 printresult.text 由于密码不正确,因此返回“找不到用户”消息。
我建议您使用禁用Javascript的扩展,清除页面的cookies并重新访问,这样您就可以像查看请求一样查看网页,还可以查看“网络”选项卡,查看从浏览器发出的请求,并将其复制到脚本中。

嘿,伙计。。。!它就像一个符咒。谢谢你的努力。这对我帮助很大。