如何找出使用公式请求的公式请求

问题描述:

我试图使用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 
+0

但我怎么能找到失踪的输入值?我尝试了上面的步骤,只留下缺少的输入,但为什么我甚至没有得到一个错误页面或类似的东西?它只是返回页面的HTML。谢谢 – zwieback86 2014-10-05 16:11:04

+0

它现在起作用了,我忘记了忘记和用户名和密码中的“s”。再次感谢 – zwieback86 2014-10-05 16:19:39