gpt4 book ai didi

python - 使用 Requests Python 提交表单

转载 作者:太空狗 更新时间:2023-10-29 23:59:25 28 4
gpt4 key购买 nike

所以我想自动填写和提交表单,我正在使用 Requests 来做到这一点。

通过检查元素,我知道要提交的 url 和提交类型(post):

method="post"
action="/sformsubmit"
enctype="multipart/form-data"

我的问题是我的请求没有通过,而且我对此还很陌生,我不确定为什么。

在我的网页上,我有两个并排的按钮,如下所示:

   ___________________________          ________________________________
| Submit decleration | | Reset Form |
___________________________ ________________________________

当我检查那条线上的元素时,我得到:

<td align="center" colspan="2">
<input type="hidden" name="inLeader" value>
<input type="hidden" name="inMember" value>
<input type="hidden" name="version" value="0">
<input type="hidden" name="key" value="2013:a:c:3:2s">
<input type="submit" value="Submit declaration">
<input type="reset" value="Reset form">
</td>

我正在尝试以下操作:

>>> payload = {'inLeader':'', 'inMember':'', 'version':'0', 'key':'2013:a:c:3:2s'}

但是它似乎不起作用,也没有产生任何错误。

任何帮助将不胜感激。提前致谢

最佳答案

好的,您的有效载荷是错误的。但。我不确定更改它是否真的有帮助,因为您没有包含收到的错误消息。

payload = {
'inLeader':'',
'inMember':'',
'version':'0',
'key':'2013:a:c:3:2s',
}

关于 HTML 表单和 POST 请求,您需要了解的是,当您单击表单上的提交按钮时,它会发送具有 name 的任何字段的 value 属性属性。例如,不会发送类型为 submit 的输入字段。它没有名称。我怀疑 inLeaderinMember 字段没有数据。这是通过 Javascript 以某种方式设置的吗?

您在评论中提到您需要登录才能访问表单?这很可能意味着您还需要随请求一起发送正确的 cookie。因此,访问 URL 时我被要求输入用户名/密码。本网站正在使用basic auth .

requests 支持这一点。示例如下:

import requests
from requests.auth import HTTPBasicAuth
requests.get(url, auth=HTTPBasicAuth('your username', 'your password'))

尝试只发出 get 请求,看看是否至少可以得到 200 响应。这意味着授权正在工作。然后你可以尝试做实际的帖子。

关于python - 使用 Requests Python 提交表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19465273/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com