Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 嗨,我';我在请求中编写一个机器人来填写HTML表单。对值和有效载荷有一些疑问_Python_Html_Python Requests - Fatal编程技术网

Python 嗨,我';我在请求中编写一个机器人来填写HTML表单。对值和有效载荷有一些疑问

Python 嗨,我';我在请求中编写一个机器人来填写HTML表单。对值和有效载荷有一些疑问,python,html,python-requests,Python,Html,Python Requests,我创建了一个用Selenium填写HTML网页表单的程序,但现在我想将其更改为请求。然而,我遇到了一些障碍。我对请求还不熟悉,我不知道如何像在原始网站上按下按钮一样模拟请求。这是我到目前为止所拥有的- import requests import random emailRandom = '' for i in range(6): add = random.randint(1,10) emailRandom += str(add) payload = {

我创建了一个用Selenium填写HTML网页表单的程序,但现在我想将其更改为请求。然而,我遇到了一些障碍。我对请求还不熟悉,我不知道如何像在原始网站上按下按钮一样模拟请求。这是我到目前为止所拥有的-

import requests
import random
emailRandom = ''
for i in range(6):        
    add = random.randint(1,10)
    emailRandom += str(add)
payload = {
    'email':emailRandom+'@redacted',
    'state_id':'34',
    'tnc-optin':'on',   
}
r= requests.get('redacted.com', data=payload)
我试图在网页上“点击”的按钮如下所示-

<div class="button-container">
    <input type="hidden" name="recaptcha" id="recaptcha">
    <button type="submit" class="button red large">ENTER NOW</button>
</div>

现在进入

此按钮的默认/“单击”值是多少?我可以使用它来使用我的请求代码提交表单吗?

使用selenium和使用请求是两件不同的事情,selenium使用浏览器通过html呈现的UI提交表单,Python请求只提交Python代码中的数据,没有html UI,它不涉及“单击”提交按钮

在这种情况下,“提交”按钮仅仅触发浏览器发布表单值


但是,您的后端将根据“recaptcha”令牌进行验证,因此您需要解决这一问题。

建议您修改请求

他们重新创造它们


詹姆斯用硒的回答比这个慢。

对。我知道,对不起。我知道它需要我发送一个有效负载,我只是不知道该元素的“clicked”值是多少,所以我可以在我的requests payload中发送它。我需要知道的是如何触发该按钮。在python中使用请求时,您不会“触发”该按钮,该按钮不存在,因为你没有渲染的前端。我不是建议使用selenium,OP提到了它,我想他会对它们感到困惑。嗨,我下载了fiddler并添加了我在composer中找到的键和值。这将如何帮助我找到问题的解决方案?您好,您只需根据发送的数据重新创建这些请求。