无法使用python请求提交表单

2024-05-29 02:27:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直试图提交表单请求,但无法提交。我尝试使用请求库发送。我无法计算出要发送的参数。 只有一个文本区和提交按钮。 以下是网站来源:

<form class="form-horizontal">
<input id="RId" type="hidden" value="Some_XYZ_Code" />
  <div class="row">
  <div class="col-md-12">
  <div id="TextContainer" class="textarea-container">
  <textarea id="Text" rows="5" maxlength="700" class="abc"></textarea>
  </div>
  </div>
  <div class="col-md-12">
  <button id="Send" class="btn btn-primary-outline" type="button"   onclick="SendMsg()" data-loading-text="Loading..."><span class="icon icon-pencil"></span> Send</button>
  </div>
  </div>
  </form>

我的代码是这样的:

^{pr2}$

Tags: divformsendid表单参数typebutton
1条回答
网友
1楼 · 发布于 2024-05-29 02:27:52

向萨拉哈留言:

def makePost2User(userId, msg):
    r = requests.get("https://%s.sarahah.com/" % userId);

    if (r.status_code != 200):
        print("Error making GET Request. Server returned Code: %s" % r.status_code)
        pass

    cookie = r.headers['Set-Cookie'].split(";")[0]
    print("Cookie: %s" % cookie)
    headers = { 'Cookie': cookie }

    tstr = r.content.decode().split("<input id=\"RecipientId\" type=\"hidden\" value=\"")[1]
    uId = tstr.split("\"")[0]
    print("UserID: %s" % uId)

    tstr = r.content.decode().split("name=\"__RequestVerificationToken\" type=\"hidden\" value=\"")[1]
    rToken = tstr.split("\"")[0]
    print("Token: %s" % rToken)

    url = "https://%s.sarahah.com/Messages/SendMessage" % userId
    data = { "__RequestVerificationToken":rToken, "userId": uId, "text": msg }

    p = requests.post(url, headers=headers, data=data)
    print("Posted. Server returned Code: %s" % p.status_code)
    pass

相关问题 更多 >

    热门问题