如何找出使用公式请求的公式请求
问题描述:
我试图使用python请求登录到网站。我的代码如下:如何找出使用公式请求的公式请求
url = "https://program.uffiliates.com/en/Auth/Login"
payload = {
'uerName': '',
'pasword': ''}
try:
with requests.Session() as s:
r = s.post(url, data=payload)
print(r.text)
except requests.exceptions.RequestException as e:
print(e)
return
这不工作,它打印出的登录页面的HTML代码,而不是我应该看什么时,即时通讯登录我用公式推错名字假设IM。在html代码中,我找到以下内容:
<form action="/en/Auth/LogInAction" method="post">
<input id="hiddenUrl" name="hiddenUrl" type="hidden" value="" />
<input id="SST_ID" name="SST_ID" type="hidden" value="2" />
<input id="serial" name="serial" type="hidden" value="" />
<input id="referer" name="referer" type="hidden" value="" />
这让我困惑。有人能告诉我什么名字,我必须使用“有效载荷”来放入我的用户名和密码。
登录后我该如何导航后端?我应该只使用requests.get与特定的URL,因为我已经登录,或者我应该以某种方式使用请求点击按钮/链接导航?
非常感谢!
答
如果我正确理解你的问题,你需要通过请求POST
您的用户名和密码,可以登录了。
首先,在url
您发布的数据应该是形式的行动。不是登录网址。
其次,在URL中有一些隐藏的输入,我怀疑服务器会检查以确认请求来自它承认的HTML。你也需要输入。
尝试
url = "https://program.uffiliates.com/en/Auth/LogInAction"
payload = {
'uerName': '',
'pasword': '',
'hiddenUrl':'',
'SST_ID' : '',
'serial':'',
'referer':''}
try:
with requests.Session() as s:
r = s.post(url, data=payload)
print(r.text)
except requests.exceptions.RequestException as e:
print(e)
return
但我怎么能找到失踪的输入值?我尝试了上面的步骤,只留下缺少的输入,但为什么我甚至没有得到一个错误页面或类似的东西?它只是返回页面的HTML。谢谢 – zwieback86 2014-10-05 16:11:04
它现在起作用了,我忘记了忘记和用户名和密码中的“s”。再次感谢 – zwieback86 2014-10-05 16:19:39