Python 嗨,我';我在请求中编写一个机器人来填写HTML表单。对值和有效载荷有一些疑问
我创建了一个用Selenium填写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 = {
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中找到的键和值。这将如何帮助我找到问题的解决方案?您好,您只需根据发送的数据重新创建这些请求。