Python 使用post请求登录

Python 使用post请求登录,python,post,python-requests,Python,Post,Python Requests,我以前曾多次使用过request post功能。我不知道为什么,但现在我无法登录到一个网站: # Import from requests import Session from bs4 import BeautifulSoup # Core settings HEADERS = { "User-Agent": "Mozilla/5.0"} s = Session() response = s.get("https://suite.searchmetrics.com/en/a

我以前曾多次使用过request post功能。我不知道为什么,但现在我无法登录到一个网站:

   # Import
from requests import Session
from bs4 import BeautifulSoup


# Core settings
HEADERS = {
    "User-Agent": "Mozilla/5.0"}

s = Session()
response = s.get("https://suite.searchmetrics.com/en/auth/login", headers=HEADERS)
soup = BeautifulSoup(response.text, "lxml")
redirect_url = soup.select('input[id="id_redirect_data"]')[0].get("value")
data = {"redirect_url": redirect_url,
        "mail": "aaa@gmail.com",
        "password": "abcfeFD"}
s.post("https://suite.searchmetrics.com/en/auth/authenticate", data=data, headers=HEADERS)
然后当我尝试时:

content_url = "https://suite.searchmetrics.com/en/research?url=wsj.com"
response = s.get(content_url, headers=HEADERS)
soup1 = BeautifulSoup(response.text, "lxml")
print(soup1.prettify())

我找不到属于highchart的散列标记,我注意到您定义了重定向url,但实际上没有使用它。您确实使用了重定向名称,但没有在任何地方定义它。这可能是您的问题吗?

我注意到您定义了重定向url,但实际上并没有使用它。您确实使用了重定向名称,但没有在任何地方定义它。这可能是您的问题吗?

您应该将数据提交到
“/en/auth/authenticate”
我将其更改为suite.searchmetrics.com/en/auth/authenticate,但它似乎不起作用。你能用你当前的代码更新你的帖子吗?我更新了代码,但是没有太大的变化,你不会得到与
请求
完全相同的html,因为一些内容是由js生成的。但是如何检查您是否已登录?我通过
“您已成功登录”获得
True
。在r.text
r
是post请求)中使用您的原样代码。您应该将数据提交到
“/en/auth/authenticate”
我将其更改为suite.searchmetrics.com/en/auth/authenticate,但它似乎对我不起作用。你能用你当前的代码更新你的帖子吗?我更新了代码,但是没有太大的变化,你不会得到与
请求
完全相同的html,因为一些内容是由js生成的。但是如何检查您是否已登录?我通过
获得
True
“您已成功登录”。在r.text
r
是post请求)中,按原样使用您的代码。