【发布时间】:2021-11-10 19:17:57
【问题描述】:
我正在尝试将文本变量添加到 POST 请求中,我想要一些关于我可能做错的建议。
原代码是html的,但是我想在python中使用。
这是原始的 HTML:
<form name="channel327911" action="https://secure.logmeinrescue.com/Customer/Download.aspx"
method="post">
<table>
<tr><td>Please enter your name: </td><td><input type="text" name="name" maxlength=
"64" /></td></tr>
</table>
<input type="submit" value="Channel 01" />
<input type="hidden" name="EntryID" value="327911" />
<input type="hidden" name="tracking0" maxlength="64" />
</form>
这是我的python代码:
import requests
json_payload = {
"EntryID": "327911",
"tracking0": "64"
}
requestlink = requests.post(url = "https://secure.logmeinrescue.com/Customer/Download.aspx", data = json_payload)
stuff = requestlink.content
with open("supportlmi.exe", 'wb') as s:
s.write(stuff)
问题是如果我尝试像这样将name 添加到帖子的正文中:
import requests
json_payload = {
"name": "Conglomo - Rocko"
"EntryID": "327911",
"tracking0": "64"
}
requestlink = requests.post(url = "https://secure.logmeinrescue.com/Customer/Download.aspx", data = json_payload)
stuff = requestlink.content
with open("supportlmi.exe", 'wb') as s:
s.write(stuff)
然后它会出错。 我认为必须有一种方法可以将名称传递到正文中,因为您可以使用表单在 html 中执行此操作。
注意:您可以使用上面的 HTML 代码,它应该可以工作。我加入了 LOGMEIN 的测试支持组,所以你可以在 HTML 中实际尝试这个:)
编辑:结果应该是下载 Logmein 的启动器。不是状态码。
我实际上想出了一个解决这个问题的方法!不是将 name 放在正文中,而是将名称附加到 url 本身,如下所示; https://secure.logmeinrescue.com/Customer/Download.aspx?name=Conglomo%20Rocko 这样做,我不需要把名字放在正文中。结果是 Logmein 启动器的 exe 下载! :)
【问题讨论】: